Fovia's C++ Client/Server API
Public Member Functions | List of all members
IInteractiveSegAdaptor Struct Referenceabstract
Inheritance diagram for IInteractiveSegAdaptor:
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 InitMinMaxWithVoxelValue ()=0
 
virtual signed int MouseDragged (signed int x, signed int y)=0
 
virtual signed int MousePressed (signed int x, signed int y)=0
 
virtual signed int MouseReleased (signed int x, signed int y)=0
 
virtual signed int ReleaseSessionResources ()=0
 
virtual signed int SetRenderParamsReceiver (IRenderParamsReceiver *pReceiver)=0
 
virtual signed int SetSegmenter (IVolumeSegmentationContext *pSegmenter, SEGMENTATION_PARAMS *pSegParams)=0
 
- Public Member Functions inherited from IRoot
template<class T >
signed int AskInterface (T **pp)
 

Detailed Description

Adaptor for Segmenting at frame rates

Use ILibrary::CreateObject() to create this object.

Listens to: MousePressed(), MouseDragged(), MouseReleased()

Member Function Documentation

virtual signed int IInteractiveSegAdaptor::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 IInteractiveSegAdaptor::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 IInteractiveSegAdaptor::GetID ( signed long long *  id)
pure virtual

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

virtual signed int IInteractiveSegAdaptor::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 IInteractiveSegAdaptor::InitMinMaxWithVoxelValue ( )
pure virtual

By default the mouse handler initializes the Min and Max to the min and max of the TF's RenderRange where you clicked. This makes sense for a 3D window. For a 2D window though it is better to init with the single voxel value under the ths mouse. So for 2D windows call this function after initialization.

virtual signed int IInteractiveSegAdaptor::MouseDragged ( signed int  x,
signed int  y 
)
pure virtual

Call this function when the mouse is dragged on a rendered image (mouse button is down and the mouse has moved).

Parameters
xThe horizontal offset from the left side of the rendered image.
yThe vertical offset from the top of the rendered image.
virtual signed int IInteractiveSegAdaptor::MousePressed ( signed int  x,
signed int  y 
)
pure virtual

Call this function when the mouse is first pressed on a rendered image.

Parameters
xThe horizontal offset from the left side of the rendered image.
yThe vertical offset from the top of the rendered image.
virtual signed int IInteractiveSegAdaptor::MouseReleased ( signed int  x,
signed int  y 
)
pure virtual

Call this function when the mouse is first released on a rendered image.

Parameters
xThe horizontal offset from the left side of the rendered image.
yThe vertical offset from the top of the rendered image.
virtual signed int IInteractiveSegAdaptor::ReleaseSessionResources ( )
pure virtual

Releases server side resources associated with this object.

virtual signed int IInteractiveSegAdaptor::SetRenderParamsReceiver ( IRenderParamsReceiver pReceiver)
pure virtual

In order for a mouse adaptor to function properly, it must be attached to an IRenderEngineContext or IRenderQueue object.

Parameters
pReceiverThe IRenderParamsReceiver to attach to this adaptor.
virtual signed int IInteractiveSegAdaptor::SetSegmenter ( IVolumeSegmentationContext pSegmenter,
SEGMENTATION_PARAMS pSegParams 
)
pure virtual

Before using this adaptor during interaction, you should call this function to appropriately initialize the IVolumeSegmentation Object it will use.

Parameters
pSegmenterthe IVolumeSegmentation Object it will use.
pSegParamsThe address of SEGMENTATION_PARAMS object to use.