HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GA_PrimitiveDefinition::SharedDataLoader Class Referenceabstract

Class to load shared data. More...

#include <GA_PrimitiveDefinition.h>

Public Member Functions

 SharedDataLoader ()
 
virtual ~SharedDataLoader ()
 
virtual GA_SharedLoadDataload (UT_JSONParser &p, GA_LoadMap *loadMap, GA_Primitive *randomPrimitive) const =0
 
virtual GA_SharedLoadDataStatstat (UT_JSONParser &parser) const
 

Detailed Description

Class to load shared data.

Definition at line 112 of file GA_PrimitiveDefinition.h.

Constructor & Destructor Documentation

GA_PrimitiveDefinition::SharedDataLoader::SharedDataLoader ( )
inline

Definition at line 115 of file GA_PrimitiveDefinition.h.

virtual GA_PrimitiveDefinition::SharedDataLoader::~SharedDataLoader ( )
inlinevirtual

Definition at line 116 of file GA_PrimitiveDefinition.h.

Member Function Documentation

virtual GA_SharedLoadData* GA_PrimitiveDefinition::SharedDataLoader::load ( UT_JSONParser p,
GA_LoadMap loadMap,
GA_Primitive randomPrimitive 
) const
pure virtual

Loads shared data from the parser given returning the shared load data object

The loader also takes one of two things:

  1. A random primitive (for now the first that requests shared) is given to the loader because voxel array shared data loader needs one because of incorrect splitting of data across the primitive and the shared voxels.
  2. The load map from IOJSON. This is used when we are loading without delay. To get a primitive the loader must ask the load map for one using its key.

It takes these things when it really should not because volume shared data was designed poorly and some of the data that should be shared is kept with the primitive and is needed to load the shared data. (Examples: Size, Border of voxel array, there may be more)

IF YOU ARE WRITING A NEW SHARED DATA LOADER DO NOT USE THE SECOND TWO PARAMETERS!!

virtual GA_SharedLoadDataStat* GA_PrimitiveDefinition::SharedDataLoader::stat ( UT_JSONParser parser) const
inlinevirtual

Stats the shared data from the parser given returning a shared load data stat object The default implementation for stat is to return a NULL pointer because most shared data does not have stat. (mostly used for packed geometry) This should only be called when delayed loading

Definition at line 139 of file GA_PrimitiveDefinition.h.


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