PackResource Class Reference
[Base Type Serializable Classes]

#include <PackResource.h>

Inherits PackStruct.

List of all members.


Detailed Description

Base type managing a file as a resource. the file can be external, on the disk, or internal, which means linked into the serialized context. In all compilation modes, You get the resource with GetBinary(). In editable mode, you can set a binary file You Set() and Get() a file name relative to the executable path, and choose if it should be linked while serialized, or just read from the file at inition. In all cases, you get the binary with GetBinary() It is used for the automated serialization.

Definition at line 26 of file PackResource.h.

Public Types

enum  eVedaUpdate {
  eVedaUpdate_NoUpdate = 0, eVedaUpdate_MemberIsGoingToChange, eVedaUpdate_MemberChanged, eVedaUpdate_MemberChangedBecauseOfUndo,
  eVedaUpdate_MemberDestroyed, eVedaUpdate_ObjectNew, eVedaUpdate_ObjectDestroyed, eVedaUpdate_ObjectReCreated,
  eVedaUpdate_ObjectClosed, eVedaUpdate_NewRegisteredClass
}
 enum used by BaseContext::NotifyObjectChange() to describe the notification meaning. Used by interfaces to monitor a context. More...

Public Member Functions

 PackResource (void)
 Constructor.
virtual ~PackResource (void)
 Destructor.
virtual const unsigned char * Serialize_In (const unsigned char *_pDescriptionChunk)
 Read the object description from a byte chunk. Could crash if chunk not valid.
virtual unsigned int GetSerializedDescriptionSize (void)
 get the size of the whole byte chunk that will be written by Serialize_Out().
virtual unsigned char * Serialize_Out (unsigned char *_pDescriptionChunkToFill)
 write the Current object definition to a Chunk using private packed types, recursively.
virtual const char * GetClassID () const
 Each BaseType's inherited classes must explicit an ID for their class, or let use one of the super class at least through this virtual method. This is needed by GUIs to detect the types of each sub-members, and shape an interface for each Object according to their member list.
unsigned int GetByteLength ()
 Get the image of the file as a binary. if _pBinary is 0L, no binary. This is the main Get accessor method that should be used for a PackResource.
void GetBinaryAtOffset (const unsigned char *&_pBinary, unsigned int &_BinaryLengthReturned, unsigned int _byteOffset=0UL, const unsigned int _maximumLengthToGet=0xffffffffUL)
 Get the image of the file or linked chunk as a binary. if _pBinary is 0L, no binary, or file problem. This is the main Get accessor method that should be used for a PackResource. You can then read that binary chunk within your function, but don't store a pointer to it: It could be destroyed in the future. (Note it is destroyed by a next call.) This class allows streaming with parameters _ByteOffset and _maximumLengthToGet, in File mode or in Linked mode.
void SetFileExtension (const char *_pFileExtenbsion)
 At init in edition mode, propose the file extension that this resource object manage.
const char * GetFileExtension () const
 get the file extension that this resource object manage. can return null (0L) if not specified.
void SetFile (const char *_pFilePath)
 set the origin file.
const char * GetFilePath () const
 access to the origin file path, even in link mode. can return 0L or invalid path.
void SetLinkMode (bool _isLink)
 Load and link the file if true, declare the resource is a file outside the object if false.
bool GetLinkMode ()
 get Link mode.
bool SetBinary (const char *_pBinaryToSet, unsigned int _BinaryLength, bool _append=false)
 Give a binary Form: in external file mode, it is saved, in link mode, it is kept in memory.
bool SetLE_UnsignedShort (unsigned short _short, bool _append=true)
 set or append a 2 bytes unsigned integer in Little endian. By default, it is added at the end of the file.
bool SetLE_UnsignedInt (unsigned int _value, bool _append=true)
 set or append a 4 bytes unsigned integer in Little endian. By default, it is added at the end of the file.
bool GetLE_UnsignedShort (unsigned short &_short, unsigned int &_fileOffset)
 read Little Endian Unsigned short at fileOffset, and increment fileOffset after it.
bool GetLE_SignedShort (signed short &_short, unsigned int &_fileOffset)
 read Little Endian Signed short at fileOffset, and increment fileOffset after it.
bool GetLE_UnsignedInt (unsigned int &_int, unsigned int &_fileOffset)
 read Little Endian Unsigned 4 byte int at fileOffset, and increment fileOffset after it.
bool GetLE_SignedInt (signed int &_int, unsigned int &_fileOffset)
 read Little Endian Unsigned 4 byte int at fileOffset, and increment fileOffset after it.
PackResource ** GetPointerOnNextResourceInContextList ()
 Set the kind of class of object that we will be able to refer. Is only possible in editable mode. In read-only mode, the referable type is implicit. It can only be done once.
virtual void SetObjectThatManagesThis (BaseObject *_pManager)
 The Object this one belong to as a member. Should only be used at init.
virtual const char * ValueToString ()
 convert the value of this object to an explicit string. The object manages the string privately, so just read it or copy it. the string would be destroyed with the objects, and changed when using Set() methods. Note: this is not virtual, but each class can manage m_pValueString or not.
virtual Cell * AddElement (int _indexWhereToInsert=-1, BaseType *_pObjectToAdd=0L)
 Add a new element, at the given index.
BaseTypeGet (unsigned int _index)
 get an element at a given index.
virtual void DeleteElement (unsigned int _index)
 delete an element at a given object of the cell to destroy. does not destroy the object.
Cell * GetFirstCell () const
 FirstCell or null if empty.
Cell * GetLastCell () const
 the Last Cell or null if empty
unsigned int GetNumberOfCell () const
 return the number of cell.
void DeleteAllElements (void)
 close and destroy the whole list.
virtual unsigned int WriteFile (const char *_pFileName)
 write a serialized form, using GetSerializedDescriptionSize() and Serialize_Out().
virtual unsigned int ReadFile (const char *_pFileName)
 Try to read a serialized form, using Serialize_In().
void SetMemberName (const char *_MemberName)
 Explicits the name of an object when used as a class member. It exists only in editable mode, and then can be used by any GUI. A member with an infoString not NULL, should be drawn in a GUI and receive updates. an object member with GetMemberName() returning NULL should not be edited by an interface or undo-managed. Use REGISTER_MEMBER macros family: it registers the members and use SetMemberName() automatically (or not, according to the compilation mode).
const char * GetMemberName () const
 Explicits the name of an object when used as a class member. It exists only in editable mode, and then can be used by any GUI. A member with an infoString not NULL, should be drawn in a GUI and receive updates. an object member with GetMemberName() to NULL should not be edited by an interface or undo-managed. set with SetMemberName().
void SetMemberInfo (const char *_MemberInfo)
 Explicits the use of an object when used as a class member. It should explain what the member does for the object. It exists only in editable mode,and can be used by any GUI. Don't use html tags , only \n are allowed. Use REGISTER_MEMBER_INFO macro after the REGISTER_MEMBER macro in the constructors. It can be left NULL.
const char * GetMemberInfo () const
 Explicits the use of an object when used as a class member. It exists only in editable mode and can be used by any GUI. It should explain what the member does for the object.
BaseObjectGetObjectThatManagesThis ()
 If there is any, get the object that manages this one as a member.
void MakeCloneOf (BaseType &_ModelObject)
 Tool that makes an object take the values of another using serialization. Use with care: You got to clone a PackUlong with a PackULong, a PackString with a PackString: Clone Object of the same type or it will crash . A test is done at the beginning to check that for both types are the sames, if not it does nothing. however it may still crash with 2 objects from unherited classes. Also, some type like PackObjectReference, will not clone its value by copying a pointer.Reference member clonage is done with BaseObject::Clone().

Protected Member Functions

virtual void FreeResource ()
 delete if was allocated.
void RegisterSerializableMember (BaseType &_object)
 Register any serializable object to serialize for read or write operation, Use it in objects constructors. The object are serialized in the file in the same order as they are given by this method.
void BeginChangeNotification ()
 In edition mode, when a member of an object is changed (like in a Set()), you got to use BeginChangeNotification(), make your changes, and then EndChangeNotification(), so that the edition of this object and member is known by the context, and allows it to manage a GUI update and the undo stack.
void EndChangeNotification ()
 In edition mode, when a member of an object is changed (like in a Set()), you got to use BeginChangeNotification(), make your changes, and then EndChangeNotification(), so that the edition of this object and member is known by the context, and allows it to manage a GUI update and the undo stack.

Protected Attributes

PackString mSer_FilePath
 the file path in file mode, empty or origin file path in linked mode. Editable.
PackULong mSer_BinarySerializedLength
 the total linked length of the binary currently open.0 means filemode. computed, serialized but not editable.
unsigned char * m_pBinary
 the binary currently opened. The chunk is managed by the object. In Linked mode, the whole binary start here. In File mode, it start a chunk that can be any part (or the whole) of the file.
unsigned int m_CurrentChunkSize
 means the current byte size of m_pBinary. Can be different from the resource byte size.
bool m_isLinkWith
 true if link, false is in file.
PackString m_FileExtension
 propose a file extension for the resource managed.
PackResourcem_pNextResourceInContextList
 chain list which start is in BaseContext, and list all resources in a context.
Cell * m_pFirstCell
 member that manages the list of members to serialize automatically.
Cell * m_pLastCell
 another member that manages the list of members to serialize automatically, and allow to grow the list by the end.
unsigned int m_NumberOfCell
 the number of cell.
BaseObjectm_pObjectThatManagesThis
 an object can belong (or not) to a BaseObject,( and to a BaseContext through it).
const char * m_pMemberName
 If used as a member in an object, the member name, or NULL (not editable member).
const char * m_pMemberInfo
 a short string explaining what's the object for in editable mode. OK if NULL (no info).
PackStringm_pValueString
 a string standing for an expression of the value of the object:
unsigned char * m_pPreviousValueShape
 used as a temp for object change notification in Begin/EndChangeNotification():
unsigned int m_PreviousValueShapeLength


Member Enumeration Documentation

enum eVedaUpdate [inherited]
 

enum used by BaseContext::NotifyObjectChange() to describe the notification meaning. Used by interfaces to monitor a context.

Enumerator:
eVedaUpdate_NoUpdate  0 means No Update.
eVedaUpdate_MemberIsGoingToChange  Sent before a BaseObject member value change.( in order to lock the context to prevent object use from other thread.).
eVedaUpdate_MemberChanged  a member of a BaseObject just changed.
eVedaUpdate_MemberChangedBecauseOfUndo  a member of a BaseObject just changed, but because of an undo. you may treat it the same as eVedaUpdate_MemberChanged.
eVedaUpdate_MemberDestroyed  Member of object Destroyed ! Watch out, the ID of the member is a dead pointer.
eVedaUpdate_ObjectNew  new BaseObject created.
eVedaUpdate_ObjectDestroyed  BaseObject just destroyed.Watch out, the ID of the object is a dead pointer.
eVedaUpdate_ObjectReCreated  an object has just been Created; It's state has changed!
eVedaUpdate_ObjectClosed  an object has just been closed; It's state has changed!
eVedaUpdate_NewRegisteredClass  TODO: a new class has been registered to the context.

Definition at line 194 of file BaseType.h.


Constructor & Destructor Documentation

PackResource void   ) 
 

Constructor.

virtual ~PackResource void   )  [virtual]
 

Destructor.


Member Function Documentation

virtual Cell* AddElement int  _indexWhereToInsert = -1,
BaseType _pObjectToAdd = 0L
[virtual, inherited]
 

Add a new element, at the given index.

Parameters:
_indexWhereToInsert the index where to insert. if -1, at the end.
_pObjectToAdd object to manage, or NULL to set it after on the returned cell.
Returns:
the element created.

Reimplemented in PackList, PackList_TimeBlockTrack, and PackList_TimeTrack.

void BeginChangeNotification  )  [protected, inherited]
 

In edition mode, when a member of an object is changed (like in a Set()), you got to use BeginChangeNotification(), make your changes, and then EndChangeNotification(), so that the edition of this object and member is known by the context, and allows it to manage a GUI update and the undo stack.

void DeleteAllElements void   )  [inherited]
 

close and destroy the whole list.

virtual void DeleteElement unsigned int  _index  )  [virtual, inherited]
 

delete an element at a given object of the cell to destroy. does not destroy the object.

Parameters:
_index index of the object to destroy.

Reimplemented in PackList.

void EndChangeNotification  )  [protected, inherited]
 

In edition mode, when a member of an object is changed (like in a Set()), you got to use BeginChangeNotification(), make your changes, and then EndChangeNotification(), so that the edition of this object and member is known by the context, and allows it to manage a GUI update and the undo stack.

virtual void FreeResource  )  [protected, virtual]
 

delete if was allocated.

BaseType* Get unsigned int  _index  )  [inherited]
 

get an element at a given index.

Parameters:
_index the index of the element
Returns:
the element at the index or NULL if failed.

void GetBinaryAtOffset const unsigned char *&  _pBinary,
unsigned int &  _BinaryLengthReturned,
unsigned int  _byteOffset = 0UL,
const unsigned int  _maximumLengthToGet = 0xffffffffUL
 

Get the image of the file or linked chunk as a binary. if _pBinary is 0L, no binary, or file problem. This is the main Get accessor method that should be used for a PackResource. You can then read that binary chunk within your function, but don't store a pointer to it: It could be destroyed in the future. (Note it is destroyed by a next call.) This class allows streaming with parameters _ByteOffset and _maximumLengthToGet, in File mode or in Linked mode.

Parameters:
_pBinary return a pointer to the binary, as a char table.
_BinaryLength return the exact byte length of the binary in _pBinary.
_ByteOffset 

Referenced by GetLE_UnsignedInt(), and GetLE_UnsignedShort().

unsigned int GetByteLength  ) 
 

Get the image of the file as a binary. if _pBinary is 0L, no binary. This is the main Get accessor method that should be used for a PackResource.

Parameters:
_pBinary return a pointer to the binary, as a char table.
_BinaryLength return the exact byte length of the binary.

virtual const char* GetClassID  )  const [inline, virtual]
 

Each BaseType's inherited classes must explicit an ID for their class, or let use one of the super class at least through this virtual method. This is needed by GUIs to detect the types of each sub-members, and shape an interface for each Object according to their member list.

Returns:
a const character string, that must be unique and unchanged for all serializable base type.

Reimplemented from PackStruct.

Definition at line 73 of file PackResource.h.

const char* GetFileExtension  )  const [inline]
 

get the file extension that this resource object manage. can return null (0L) if not specified.

Returns:
_pFileExtenbsion

Definition at line 113 of file PackResource.h.

References PackString::Get(), and m_FileExtension.

const char* GetFilePath  )  const [inline]
 

access to the origin file path, even in link mode. can return 0L or invalid path.

Returns:
File Path.

Definition at line 128 of file PackResource.h.

References PackString::Get(), and mSer_FilePath.

Cell* GetFirstCell  )  const [inline, inherited]
 

FirstCell or null if empty.

Returns:
the cell

Definition at line 171 of file PackStruct.h.

References PackStruct::m_pFirstCell.

Referenced by LightModel::GetFirstDifuseLight(), and LightModel::GetFirstLinearLight().

Cell* GetLastCell  )  const [inline, inherited]
 

the Last Cell or null if empty

Returns:
the cell

Definition at line 176 of file PackStruct.h.

References PackStruct::m_pLastCell.

Referenced by PackList_TimeTrack::GetEndTime().

bool GetLE_SignedInt signed int &  _int,
unsigned int &  _fileOffset
[inline]
 

read Little Endian Unsigned 4 byte int at fileOffset, and increment fileOffset after it.

Parameters:
_short the value read and returned.
Returns:
if false, _short invalid.

Definition at line 241 of file PackResource.h.

References GetLE_UnsignedInt().

bool GetLE_SignedShort signed short &  _short,
unsigned int &  _fileOffset
[inline]
 

read Little Endian Signed short at fileOffset, and increment fileOffset after it.

Parameters:
_short the value read and returned.
Returns:
if false, _short invalid.

Definition at line 217 of file PackResource.h.

References GetLE_UnsignedShort().

bool GetLE_UnsignedInt unsigned int &  _int,
unsigned int &  _fileOffset
[inline]
 

read Little Endian Unsigned 4 byte int at fileOffset, and increment fileOffset after it.

Parameters:
_short the value read and returned.
Returns:
if false, _short invalid.

Definition at line 224 of file PackResource.h.

References GetBinaryAtOffset().

Referenced by GetLE_SignedInt().

bool GetLE_UnsignedShort unsigned short &  _short,
unsigned int &  _fileOffset
[inline]
 

read Little Endian Unsigned short at fileOffset, and increment fileOffset after it.

Parameters:
_short the value read and returned.
Returns:
if false, _short invalid.

Definition at line 200 of file PackResource.h.

References GetBinaryAtOffset().

Referenced by GetLE_SignedShort().

bool GetLinkMode  ) 
 

get Link mode.

Returns:
true is linked, false, is in file.

const char* GetMemberInfo  )  const [inline, inherited]
 

Explicits the use of an object when used as a class member. It exists only in editable mode and can be used by any GUI. It should explain what the member does for the object.

Returns:
a short string explaining what's the object for, or NULL if not set.

Definition at line 144 of file BaseType.h.

References BaseType::m_pMemberInfo.

const char* GetMemberName  )  const [inline, inherited]
 

Explicits the name of an object when used as a class member. It exists only in editable mode, and then can be used by any GUI. A member with an infoString not NULL, should be drawn in a GUI and receive updates. an object member with GetMemberName() to NULL should not be edited by an interface or undo-managed. set with SetMemberName().

Returns:
the member name or NULL

Definition at line 123 of file BaseType.h.

References BaseType::m_pMemberName.

unsigned int GetNumberOfCell  )  const [inline, inherited]
 

return the number of cell.

Returns:
the number of cell.

Definition at line 181 of file PackStruct.h.

References PackStruct::m_NumberOfCell.

BaseObject* GetObjectThatManagesThis  )  [inline, inherited]
 

If there is any, get the object that manages this one as a member.

Returns:
the object that manages this one as a member, or NULL

Definition at line 170 of file BaseType.h.

References BaseType::m_pObjectThatManagesThis.

PackResource** GetPointerOnNextResourceInContextList  )  [inline]
 

Set the kind of class of object that we will be able to refer. Is only possible in editable mode. In read-only mode, the referable type is implicit. It can only be done once.

Returns:
pointer on a pointer

Definition at line 249 of file PackResource.h.

References m_pNextResourceInContextList.

virtual unsigned int GetSerializedDescriptionSize void   )  [virtual]
 

get the size of the whole byte chunk that will be written by Serialize_Out().

Returns:
byte size of the serialisation to do.(1,2,3, or4)

Reimplemented from PackStruct.

void MakeCloneOf BaseType _ModelObject  )  [inherited]
 

Tool that makes an object take the values of another using serialization. Use with care: You got to clone a PackUlong with a PackULong, a PackString with a PackString: Clone Object of the same type or it will crash . A test is done at the beginning to check that for both types are the sames, if not it does nothing. however it may still crash with 2 objects from unherited classes. Also, some type like PackObjectReference, will not clone its value by copying a pointer.Reference member clonage is done with BaseObject::Clone().

Parameters:
_ModelObject the object took as a model.

virtual unsigned int ReadFile const char *  _pFileName  )  [virtual, inherited]
 

Try to read a serialized form, using Serialize_In().

Parameters:
_pFileName the file path.
Returns:
0 if OK.

void RegisterSerializableMember BaseType _object  )  [protected, inherited]
 

Register any serializable object to serialize for read or write operation, Use it in objects constructors. The object are serialized in the file in the same order as they are given by this method.

Parameters:
_object reference to the member, which must inherit from BaseType.

virtual const unsigned char* Serialize_In const unsigned char *  _pDescriptionChunk  )  [virtual]
 

Read the object description from a byte chunk. Could crash if chunk not valid.

Parameters:
_pDescriptionChunk the objet description chunk.
Returns:
the end of the chunk written, possibly unlocated. Don't use this if you don't need it.

Reimplemented from PackStruct.

virtual unsigned char* Serialize_Out unsigned char *  _pDescriptionChunkToFill  )  [virtual]
 

write the Current object definition to a Chunk using private packed types, recursively.

Parameters:
_pDescriptionChunkToFill the chunk where to write the objet description chunk.
Returns:
the end of the chunk written, possibly unlocated. Don't use this if you don't need it.

Reimplemented from PackStruct.

bool SetBinary const char *  _pBinaryToSet,
unsigned int  _BinaryLength,
bool  _append = false
 

Give a binary Form: in external file mode, it is saved, in link mode, it is kept in memory.

Parameters:
_pBinaryToSet 
_BinaryLength byte size of _pBinaryToSet
_append if true, chunk is added to the existing chunk or file.
Returns:
true if OK, false if file mode write error.

Referenced by SetLE_UnsignedInt(), and SetLE_UnsignedShort().

void SetFile const char *  _pFilePath  ) 
 

set the origin file.

Parameters:
_pFilePath 

void SetFileExtension const char *  _pFileExtenbsion  ) 
 

At init in edition mode, propose the file extension that this resource object manage.

Parameters:
_pFileExtenbsion without the dot, "mpg" , "jpg" , ...

bool SetLE_UnsignedInt unsigned int  _value,
bool  _append = true
[inline]
 

set or append a 4 bytes unsigned integer in Little endian. By default, it is added at the end of the file.

Parameters:
_value 4 bytes unsigned integer
_append if true, chunk is added to the existing chunk or file.
Returns:
true if OK, false if file mode write error.

Definition at line 180 of file PackResource.h.

References SetBinary().

bool SetLE_UnsignedShort unsigned short  _short,
bool  _append = true
[inline]
 

set or append a 2 bytes unsigned integer in Little endian. By default, it is added at the end of the file.

Parameters:
_short 2 bytes unsigned integer
_append if true, chunk is added to the existing chunk or file.
Returns:
true if OK, false if file mode write error.

Definition at line 163 of file PackResource.h.

References SetBinary().

void SetLinkMode bool  _isLink  ) 
 

Load and link the file if true, declare the resource is a file outside the object if false.

Parameters:
_isLink true: is linked, false, is in file.

void SetMemberInfo const char *  _MemberInfo  )  [inherited]
 

Explicits the use of an object when used as a class member. It should explain what the member does for the object. It exists only in editable mode,and can be used by any GUI. Don't use html tags , only \n are allowed. Use REGISTER_MEMBER_INFO macro after the REGISTER_MEMBER macro in the constructors. It can be left NULL.

Parameters:
_MemberName a short string explaining what's the object for.

void SetMemberName const char *  _MemberName  )  [inherited]
 

Explicits the name of an object when used as a class member. It exists only in editable mode, and then can be used by any GUI. A member with an infoString not NULL, should be drawn in a GUI and receive updates. an object member with GetMemberName() returning NULL should not be edited by an interface or undo-managed. Use REGISTER_MEMBER macros family: it registers the members and use SetMemberName() automatically (or not, according to the compilation mode).

Parameters:
_MemberName the member name

virtual void SetObjectThatManagesThis BaseObject _pManager  )  [virtual]
 

The Object this one belong to as a member. Should only be used at init.

Parameters:
_pManager BaseObject

Reimplemented from PackStruct.

virtual const char* ValueToString  )  [virtual, inherited]
 

convert the value of this object to an explicit string. The object manages the string privately, so just read it or copy it. the string would be destroyed with the objects, and changed when using Set() methods. Note: this is not virtual, but each class can manage m_pValueString or not.

Returns:
the value as a const string.

Reimplemented from BaseType.

Reimplemented in PackDynamicType.

virtual unsigned int WriteFile const char *  _pFileName  )  [virtual, inherited]
 

write a serialized form, using GetSerializedDescriptionSize() and Serialize_Out().

Parameters:
_pFileName the file path.
Returns:
0 if OK.


Member Data Documentation

unsigned int m_CurrentChunkSize [protected]
 

means the current byte size of m_pBinary. Can be different from the resource byte size.

Definition at line 269 of file PackResource.h.

PackString m_FileExtension [protected]
 

propose a file extension for the resource managed.

Definition at line 274 of file PackResource.h.

Referenced by GetFileExtension().

bool m_isLinkWith [protected]
 

true if link, false is in file.

Definition at line 271 of file PackResource.h.

unsigned int m_NumberOfCell [protected, inherited]
 

the number of cell.

Definition at line 197 of file PackStruct.h.

Referenced by PackStruct::GetNumberOfCell().

unsigned char* m_pBinary [protected]
 

the binary currently opened. The chunk is managed by the object. In Linked mode, the whole binary start here. In File mode, it start a chunk that can be any part (or the whole) of the file.

Definition at line 267 of file PackResource.h.

Cell* m_pFirstCell [protected, inherited]
 

member that manages the list of members to serialize automatically.

Definition at line 193 of file PackStruct.h.

Referenced by PackStruct::GetFirstCell().

Cell* m_pLastCell [protected, inherited]
 

another member that manages the list of members to serialize automatically, and allow to grow the list by the end.

Definition at line 195 of file PackStruct.h.

Referenced by PackStruct::GetLastCell().

const char* m_pMemberInfo [protected, inherited]
 

a short string explaining what's the object for in editable mode. OK if NULL (no info).

Definition at line 259 of file BaseType.h.

Referenced by BaseType::GetMemberInfo().

const char* m_pMemberName [protected, inherited]
 

If used as a member in an object, the member name, or NULL (not editable member).

Definition at line 255 of file BaseType.h.

Referenced by BaseType::GetMemberName().

PackResource* m_pNextResourceInContextList [protected]
 

chain list which start is in BaseContext, and list all resources in a context.

Definition at line 278 of file PackResource.h.

Referenced by GetPointerOnNextResourceInContextList().

BaseObject* m_pObjectThatManagesThis [protected, inherited]
 

an object can belong (or not) to a BaseObject,( and to a BaseContext through it).

Definition at line 251 of file BaseType.h.

Referenced by BaseType::GetObjectThatManagesThis().

unsigned char* m_pPreviousValueShape [protected, inherited]
 

used as a temp for object change notification in Begin/EndChangeNotification():

Definition at line 269 of file BaseType.h.

PackString* m_pValueString [protected, inherited]
 

a string standing for an expression of the value of the object:

Definition at line 264 of file BaseType.h.

PackULong mSer_BinarySerializedLength [protected]
 

the total linked length of the binary currently open.0 means filemode. computed, serialized but not editable.

Definition at line 265 of file PackResource.h.

PackString mSer_FilePath [protected]
 

the file path in file mode, empty or origin file path in linked mode. Editable.

Definition at line 263 of file PackResource.h.

Referenced by GetFilePath().


The documentation for this class was generated from the following file:
      /\/\        4         N         k         !         N         D
                      _______  _ __ ___  _____            ___ _ _  ____
     ___________  __//___   /________  |/    / ___________\_______/    \
    /   _   _   \/   _     /    _   /      _/_/____/    _       __     /
   /    /   /       /     /    /    \      \/     /    /    \   \     /
  \\___/___/___/    ¯    _____/_____/       ______\___/_____/\________\\
               \________/_ ___ __ l____\      /elD!  
                 http://www.m4nkind.com \____/