00001
00032 #ifndef LL_LLVOLUMEMESSAGE_H
00033 #define LL_LLVOLUMEMESSAGE_H
00034
00035 #include "llvolume.h"
00036
00037 class LLMessageSystem;
00038 class LLDataPacker;
00039
00040
00041 class LLVolumeMessage
00042 {
00043 protected:
00044
00045
00046
00047
00048 static bool packProfileParams(
00049 const LLProfileParams* params,
00050 LLMessageSystem* mesgsys);
00051 static bool packProfileParams(
00052 const LLProfileParams* params,
00053 LLDataPacker& dp);
00054 static bool unpackProfileParams(
00055 LLProfileParams* params,
00056 LLMessageSystem* mesgsys,
00057 char* block_name,
00058 S32 block_num = 0);
00059 static bool unpackProfileParams(LLProfileParams* params, LLDataPacker& dp);
00060
00061 static bool packPathParams(
00062 const LLPathParams* params,
00063 LLMessageSystem* mesgsys);
00064 static bool packPathParams(const LLPathParams* params, LLDataPacker& dp);
00065 static bool unpackPathParams(
00066 LLPathParams* params,
00067 LLMessageSystem* mesgsys,
00068 char* block_name,
00069 S32 block_num = 0);
00070 static bool unpackPathParams(LLPathParams* params, LLDataPacker& dp);
00071
00072 public:
00080 static bool constrainVolumeParams(LLVolumeParams& params);
00081
00082 static bool packVolumeParams(
00083 const LLVolumeParams* params,
00084 LLMessageSystem* mesgsys);
00085 static bool packVolumeParams(
00086 const LLVolumeParams* params,
00087 LLDataPacker& dp);
00088 static bool unpackVolumeParams(
00089 LLVolumeParams* params,
00090 LLMessageSystem* mesgsys,
00091 char* block_name,
00092 S32 block_num = 0);
00093 static bool unpackVolumeParams(LLVolumeParams* params, LLDataPacker &dp);
00094 };
00095
00096 #endif // LL_LLVOLUMEMESSAGE_H
00097