Fovia's C++ Client/Server API
Public Member Functions | List of all members
IOctreeContext Struct Referenceabstract
Inheritance diagram for IOctreeContext:
IRoot

Public Member Functions

virtual signed int AskInterface (const BGUID *piid, IRoot **ppr)=0
 
virtual signed int DecRef ()=0
 
virtual signed int GetID (signed long long *id)=0
 
virtual signed int IncRef ()=0
 
virtual signed int IsSegmented (signed int *bVal)=0
 
virtual signed int LoadSegStateFromLocalGIPL (char *fileName)=0
 
virtual signed int ReleaseSessionResources ()=0
 
virtual signed int SaveSegStateAsLocalGIPL (char *fileName)=0
 
virtual signed int SetSegmented (signed int bVal)=0
 
virtual signed int Update (signed int mode, CROP_BOX_PARAMS *cbp, unsigned int labelMask=0xff)=0
 
- Public Member Functions inherited from IRoot
template<class T >
signed int AskInterface (T **pp)
 

Detailed Description

The IOctreeContext interface represents an ocree in memory on the server. The octree is necessary for rendering in all rendering modes except for RT_THIN_* modes. Use IServerContext::CreateOctreeEx() to create this object.

Member Function Documentation

virtual signed int IOctreeContext::AskInterface ( const BGUID piid,
IRoot **  ppr 
)
pure virtual

Queries this object to see if the interface piid is supported and returns the result in ppr.

Parameters
piidThe BGUID of the requested interface.
pprThe address of an IRoot pointer which will receive the new interface.
Returns
S_OK if the interface is supported. E_FAIL if it is not.

Implements IRoot.

virtual signed int IOctreeContext::DecRef ( )
pure virtual

Decreases the reference count on this object by 1. If the reference count reaches 0, the object is deallocated.

Implements IRoot.

virtual signed int IOctreeContext::GetID ( signed long long *  id)
pure virtual

Returns an integer that represents the server side object that contains the octree.

virtual signed int IOctreeContext::IncRef ( )
pure virtual

Increases the reference count on this object by 1. You do not need to call this after an object is first created. It is 1 by default.

Implements IRoot.

virtual signed int IOctreeContext::IsSegmented ( signed int *  bVal)
pure virtual

bVal gets H_TRUE if the dataset is segmented, H_FALSE otherwise.

Parameters
bValGets H_TRUE if the dataset is segmented, H_FALSE otherwise.
virtual signed int IOctreeContext::LoadSegStateFromLocalGIPL ( char *  fileName)
pure virtual

Load the segmentation State from a .gipl format file (only supports 8TF builds)

Parameters
fileNameFile Name with Path on Server (or local machine for In-Proc).
virtual signed int IOctreeContext::ReleaseSessionResources ( )
pure virtual

Call this function if you wish to free server resources before disconnecting.

virtual signed int IOctreeContext::SaveSegStateAsLocalGIPL ( char *  fileName)
pure virtual

Save the segmentation state to a .gipl format file (only supports 8TF builds)

Parameters
fileNameFile Name with Path on Server (or local machine for In-Proc).
virtual signed int IOctreeContext::SetSegmented ( signed int  bVal)
pure virtual

Used for bookkeeping on segmentation state. Since segmentation can use a decent chunk of memory, it's nice to know when we really have to persist it.

Parameters
bValH_TRUE if the volume has been segmented, H_FALSE otherwise.
virtual signed int IOctreeContext::Update ( signed int  mode,
CROP_BOX_PARAMS cbp,
unsigned int  labelMask = 0xff 
)
pure virtual

Update the octree after any operation that makes it invalid. The supported modes are indicated in the ENUM_UPDATE_MODE. The server will ignore the crop box as of now

Parameters
modeA octree update mode to indicate how the octree should be regenerated, as indicated in the ENUM_UPDATE_MODE
cbpIndicate crop box params to update octree for only for a certain section. Currently this is not supported
labelMaskIf UPDATE_MODE_CLEAR_BY_MASK modes is selected, this allows the specification of a bitmask to indicate which segmentation labels are to be cleared.