HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GA_SharedLoadData Class Referenceabstract

#include <GA_SharedLoadData.h>

+ Inheritance diagram for GA_SharedLoadData:

Public Member Functions

 GA_SharedLoadData ()
 
virtual ~GA_SharedLoadData ()
 
virtual UT_StringHolder getSharedDataKey () const =0
 Returns the key that is used to refer to this shared data. More...
 

Detailed Description

Class to hold shared data during the loading process.

Some primitive types store shared data between them. This class is used as an interface to retain data during the loading/saving process. It also Facilitates the delayed loading of this shared data.

Saving:
When saving, primitives will have a "pre-save" pass. During this pass, they can add "shared" data to the GA_SaveMap. The primitive can check to see if the data is already stored in the map, if not, it can add a GA_SharedLoadData to the map (given a unique key). A single JSON will be be saved. Subsequent primitives, should detect that the data is stored so that only a single copy of the shared data is saved in the map.

When the primitive saves its local data, it can make reference to the named shared data.

Loading:
Dring loading time GA_SharedDataHandles are created to represent all the shared data. Primitives then ask the GA_LoadMap for a copy of these handles. Whenever the primitive needs the data it is requested from the shared data handle and returned as a GA_SharedLoadData

Examples:
packedshareddata/GU_PackedSharedData.C.

Definition at line 41 of file GA_SharedLoadData.h.

Constructor & Destructor Documentation

GA_SharedLoadData::GA_SharedLoadData ( )
virtual GA_SharedLoadData::~GA_SharedLoadData ( )
virtual

Member Function Documentation

virtual UT_StringHolder GA_SharedLoadData::getSharedDataKey ( ) const
pure virtual

Returns the key that is used to refer to this shared data.

Implemented in GEO_PackedNameMap::LoadContainer.


The documentation for this class was generated from the following file: