IRfEncapsulatorSet Interface Reference

Inherits IUnknown.

List of all members.

Public Member Functions

HRESULT Attach ([in] IRsNode *pNode)
HRESULT GetOwner ([out, retval] IRnEncapsulator **ppEncaps)
HRESULT RemoveFromSpace ([in] IRsNode *pNode)
HRESULT ExportConnector ([in] IRsConnector *pCon,[in] RtBool bConnect,[in] RtBool bSetValue,[in] RtBool bOutside,[out, retval] IRsConnector **ppExpCon)
HRESULT IsInSubSpace ([in]IRsNode *pNode,[out] RtLong *pDepth)
HRESULT MoveSubSpaceContent ([in]IRnEncapsulator *pSourceEncaps)
HRESULT ClearContent (void)
HRESULT EncapsulateObjects ([in] BSTR bstrName,[in] IRsObjectList *pObjList,[out] IRsNode **ppNewEncaps,[out] IRnEncapsulator **ppRootEncaps)
HRESULT ExportDirectConnections (void)
HRESULT DeleteDirectConnections (IRsNode *pDstNode)
HRESULT Unencapsulate ([in] IRsNode *pEncapsNode)


Detailed Description

This function set provides helper functions for operations on encapsulators.

Function set with auxiliary functions for encapsulator node.


Member Function Documentation

HRESULT IRfEncapsulatorSet::Attach ( [in] IRsNode pNode  ) 

Attaches the fn set to specified node.

Parameters:
pNode [in] Name of node to attach fn-set to.

HRESULT IRfEncapsulatorSet::GetOwner ( [out, retval] IRnEncapsulator **  ppEncaps  ) 

Returns owner node of currently attached node.

Returns:
ppEncaps [out,retval] interface of owner node, NULL if object does not have owner

HRESULT IRfEncapsulatorSet::RemoveFromSpace ( [in] IRsNode pNode  ) 

Removes specified node from encapsulator.

  • Only the CON_ENCAPS_OWNER connection can exist.
  • Other connectors must be disconnected.
Parameters:
pNode [in] Name of node to remove.
Returns:
S_FALSE if node still has some connections active.

HRESULT IRfEncapsulatorSet::ExportConnector ( [in] IRsConnector pCon,
[in] RtBool  bConnect,
[in] RtBool  bSetValue,
[in] RtBool  bOutside,
[out, retval] IRsConnector **  ppExpCon 
)

Exports connector to outer boundary of attached encapsulator.

Parameters:
pCon [in] Connector to export.
bConnect [in] If true, also connect original connector to connector just created on encapsulator.
bSetValue [in] If true, also transfer value from exported to new connector.
bOutside [in] If true, then the CONFLG_OUT and CONFLG_IN are changed for the connector.
  • If false, then the same flags as on the exporting connector are used.
  • always use bOutside = false if you export from node which is a child of the encapsulator ( node is inside the encapsulator).
  • use bOutside = true if the node is not inside encapsulator
Returns:
ppExpCon [out,retval] Pointer to exported connector to be filled.

HRESULT IRfEncapsulatorSet::IsInSubSpace ( [in] IRsNode pNode,
[out] RtLong *  pDepth 
)

Determines if specified node lies in attached encapsulator.

Parameters:
pNode [in] Node to examine.
pDepth [out] Detected depth of node.
  • Set to -1 if node not in encapsulator's subspace.

HRESULT IRfEncapsulatorSet::MoveSubSpaceContent ( [in] IRnEncapsulator pSourceEncaps  ) 

Move nodes from provided encapsulator to attached.

Parameters:
pSourceEncaps [in] Source encapsulator.

HRESULT IRfEncapsulatorSet::ClearContent ( void   ) 

Removes contents of attached encapsulator leaving it blank.

HRESULT IRfEncapsulatorSet::EncapsulateObjects ( [in] BSTR  bstrName,
[in] IRsObjectList pObjList,
[out] IRsNode **  ppNewEncaps,
[out] IRnEncapsulator **  ppRootEncaps 
)

Encapsulates specified list of nodes into one encapsulator, giving it specified name.

Parameters:
bstrName [in] Name for new encapsulator.
pObjList [in] List of objects to encapsulate.
ppNewEncaps [out] Pointer to created encapsulator.
ppRootEncaps [out] Pointer to original encapsulator of objects which have been encapsulated (new encapsulator is a child of it).

HRESULT IRfEncapsulatorSet::ExportDirectConnections ( void   ) 

If there are any connections between objects inside encapsulator and
objects which are siblings of encapsulator, connectors on encapsulator boundary are created for them.

HRESULT IRfEncapsulatorSet::DeleteDirectConnections ( IRsNode pDstNode  ) 

Remove all direct connections between attached encapsulator and provided node.
Inner nodes of pDstNodes are not checked.

Parameters:
pDstNode [in] specifies a node outside of attached encapsulator.

HRESULT IRfEncapsulatorSet::Unencapsulate ( [in] IRsNode pEncapsNode  ) 

Unencapsulates particular node.

Parameters:
pEncapsNode [in] Encapsulator node to unencapsulate.


Generated on Wed May 20 21:32:09 2009 for trueSpace7.6 SDK by  doxygen 1.5.5