DX::IDXGroup Struct Reference

#include <IDXGroup.h>

Inherits DX::IDXUserData, and DX::IDXModelOwned.

Collaboration diagram for DX::IDXGroup:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual IDXGroupPtr DXMCALL GetParent () const =0
virtual const char *DXMCALL GetID () const =0
virtual DXError DXMCALL GetMesh (IDXMeshPtr *out) const =0
virtual const DXMatrix DXMCALL GetTransform () const =0
virtual uint DXMCALL GetNumGroups () const =0
virtual DXError DXMCALL GetGroup (uint index, IDXGroupPtr *out) const =0
virtual DXError DXMCALL GetGroup (const char *id, IDXGroupPtr *out, bool recurse=false) const =0
virtual DXError DXMCALL GetGroup (const char *id, IDXGetGroupResultPtr *out, bool recurse=false)=0
virtual DXError DXMCALL GetGroups (IDXGroupArray out) const =0
virtual DXError DXMCALL GetGroups (uint start, uint count, IDXGroupArray out) const =0
virtual DXError DXMCALL GetGroupIndex (const char *id, uint *out) const =0
virtual DXError DXMCALL GetGroupIndex (IDXGroupPtr group, uint *out) const =0
virtual bool DXMCALL GetVisible () const =0
virtual DXError DXMCALL SetID (const char *id)=0
virtual void DXMCALL SetTransform (const DXMatrix &matrix)=0
virtual void DXMCALL SetVisible (bool value)=0
virtual DXError DXMCALL CreateGroup (const char *id, IDXGroupPtr *out=0)=0
virtual DXError DXMCALL RemoveGroup (const char *id, bool recurse=false)=0
virtual DXError DXMCALL RemoveGroup (IDXGroupPtr group, bool recurse=false)=0
virtual DXError DXMCALL RemoveGroup (uint index)=0
virtual DXError DXMCALL RemoveGroup (uint start, uint count)=0
virtual DXError DXMCALL CreateMesh (IDXMeshPtr *out=0)=0
virtual DXError DXMCALL DestroyMesh ()=0
virtual void DXMCALL Optimize (bool recurse=true)=0


Detailed Description

An IDXGroup represents a node in the model heirarchy. It can have a mesh, and a number of children.

Member Function Documentation

virtual DXError DXMCALL DX::IDXGroup::CreateGroup ( const char *  id,
IDXGroupPtr *  out = 0 
) [pure virtual]

Create a new subgroup on this group.

Parameters:
id The id that will be used to refer to this group in the API and in javascript inside DXStudio.
out An optional pointer to an IDXGroupPtr where a pointer to the new IDXGroupPtr will be saved.
Returns:
Error_NullParam if id was null.
Error_InvalidID if id contained invalid characters.
Error_Success if the group was added successfully.
See also:
IDXGroup

virtual DXError DXMCALL DX::IDXGroup::CreateMesh ( IDXMeshPtr *  out = 0  )  [pure virtual]

Create a mesh on this IDXGroup. Any existing mesh will be deleted, invalidating all data created by that mesh.

Parameters:
out A pointer to an IDXMeshPtr where a copy will be saved. This may be null.
Returns:
Error_Duplicate if an IDXMeshPtr already exists on this group.
Error_Success if the IDXMeshPtr was created.

virtual DXError DXMCALL DX::IDXGroup::DestroyMesh (  )  [pure virtual]

Destroy the mesh that is present on this group.

Returns:
Error_NotFound if there was no mesh to destroy.
Error_Success if the mesh was destroyed.

virtual DXError DXMCALL DX::IDXGroup::GetGroup ( const char *  id,
IDXGetGroupResultPtr *  out,
bool  recurse = false 
) [pure virtual]

Get any groups with the specified id.

Parameters:
id The id to find.
out A pointer to an IDXGetGroupResultPtr which will store the results.
recurse If true, thiswill scan all child groups.
Returns:
Error_NullParam if out was null.
Error_NullParam2 if id was null.
Error_NotFound if there was no group found with the specfied id.
Error_Success if a number of groups were stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroup ( const char *  id,
IDXGroupPtr *  out,
bool  recurse = false 
) const [pure virtual]

Get the first group with the specified id.

Parameters:
id The id of the group to find.
out A pointer to an IDXGroupPtr where the result will be stored.
recurse If true, this will scan all child groups as well.
Returns:
Error_NullParam if out was null.
Error_NullParam2 if id was null.
Error_NotFound if there was no group found with the specified id.
Error_Success if the result was stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroup ( uint  index,
IDXGroupPtr *  out 
) const [pure virtual]

Get the child group at the specified index.

Parameters:
index The index of the child group to retrieve.
out A pointer to an IDXGroupPtr where the result will be stored.
Returns:
Error_NullParam if out was null.
Error_OutOfRange if index was out of range.
Error_Success if the result was stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroupIndex ( IDXGroupPtr  group,
uint *  out 
) const [pure virtual]

Get the index of the specified group.

Parameters:
group The group to find.
out A pointer to a uint where the result will be stored.
Returns:
Error_NullParam if out was null.
Error_NullParam2 if id was null.
Error_NotFound if the group was not found.
Error_Success if the group was found and the result stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroupIndex ( const char *  id,
uint *  out 
) const [pure virtual]

Get the index of the group with the specified id.

Parameters:
id The id of the group to find.
out A pointer to a uint where the result will be stored.
Returns:
Error_NullParam if out was null.
Error_NullParam2 if id was null.
Error_NotFound if there was no group with the specified id.
Error_Success if the group was found and the result stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroups ( uint  start,
uint  count,
IDXGroupArray  out 
) const [pure virtual]

Get a block of groups which are direct children of this group.

Parameters:
start The index of the first element to retrieve.
count The number of elements to retrieve.
out A user allocated array of IDXGroupPtr of at least count where the result will be stored.
Returns:
Error_NullParam if out was null.
Error_OutOfRange if start was out of range.
Error_Success if the result was stored in out.

virtual DXError DXMCALL DX::IDXGroup::GetGroups ( IDXGroupArray  out  )  const [pure virtual]

Get the groups which are direct children of this group.

Parameters:
out A user allocated array of IDXGroupPtr of length at least GetNumGroups.
Returns:
Error_NullParam if out was null.
Error_Success if the result was stored in out.

virtual const char* DXMCALL DX::IDXGroup::GetID (  )  const [pure virtual]

The current ID that this group will be identified by in script and in the API.

Returns:
The current ID for this group.

virtual DXError DXMCALL DX::IDXGroup::GetMesh ( IDXMeshPtr *  out  )  const [pure virtual]

Get the current IDXMesh for this Group.

Parameters:
out A pointer to an IDXMeshPtr where the result will be stored.
Returns:
Error_NullParm if out was null.
Error_NotFound if there was no mesh present.
Error_Success if the result was stored in out.

virtual uint DXMCALL DX::IDXGroup::GetNumGroups (  )  const [pure virtual]

Returns:
The number of child groups.

virtual IDXGroupPtr DXMCALL DX::IDXGroup::GetParent (  )  const [pure virtual]

Get the IDXGroup that is one level above in the tree.

Returns:
If the group has a parent, an IDXGroupPtr. If this is a top level group, returns 0.

virtual const DXMatrix DXMCALL DX::IDXGroup::GetTransform (  )  const [pure virtual]

The current relative transform for this group.

Returns:
A DXMatrix for the transform.

virtual bool DXMCALL DX::IDXGroup::GetVisible (  )  const [pure virtual]

Get if this group is visible.

Returns:
True if visible.

virtual void DXMCALL DX::IDXGroup::Optimize ( bool  recurse = true  )  [pure virtual]

Optimise for a faster render.

Parameters:
recurse Should this optimize all subgroups too. Defaults to true.

virtual DXError DXMCALL DX::IDXGroup::RemoveGroup ( uint  start,
uint  count 
) [pure virtual]

Remove a range of groups from the group.

Parameters:
start The index of the first element to remove.
count The number of elements to remove.
Returns:
Error_OutOfRange if start was out of range.
Error_Success if the range was removed.

virtual DXError DXMCALL DX::IDXGroup::RemoveGroup ( uint  index  )  [pure virtual]

Remove the group at the specified index from the group.

Parameters:
index The index of the group to remove.
Returns:
Error_OutOfRange if index was out of range.
Error_Success if the group was removed.

virtual DXError DXMCALL DX::IDXGroup::RemoveGroup ( IDXGroupPtr  group,
bool  recurse = false 
) [pure virtual]

Removes the specfied group from the group.

Parameters:
group The group to remove.
recurse Set to true if you want to search child groups for this group.
Returns:
Error_NullParam if group was null.
Error_NotFound if the group was not found.
Error_Success if the group was removed.

virtual DXError DXMCALL DX::IDXGroup::RemoveGroup ( const char *  id,
bool  recurse = false 
) [pure virtual]

Remove the group with the specified id from the group.

Parameters:
id The id of the group to remove.
recurse Set to true if you want to search child groups for the group.
Returns:
Error_NullParam if id was null.
Error_NotFound if there was no group with the specified id.
Error_Success if the group was removed.

virtual DXError DXMCALL DX::IDXGroup::SetID ( const char *  id  )  [pure virtual]

Set the ID for this IDXGroup. This will update all references if successful.

Parameters:
id The new ID.
Returns:
Error_NullParam if id was null. Error_InvalidParam if the id contained invalid characters Error_Success if the id was changed.

virtual void DXMCALL DX::IDXGroup::SetTransform ( const DXMatrix &  matrix  )  [pure virtual]

The relative transform for this IDXGroup relative to the parent.

Parameters:
matrix A DXMatrix for this transform.
See also:
CreateMatrix

virtual void DXMCALL DX::IDXGroup::SetVisible ( bool  value  )  [pure virtual]

Set if this group should be visible. If false, will not be renderered. This will also hide subgroups.


Generated on Wed Jun 17 17:24:50 2009 for DXMesh API by  doxygen 1.5.7.1