|
[1 introduction] [2 overview] [3 reference] [4 GUI] IndexE3dNode_GetChildIndex E3dNodeComponent_ByClass E3dNodeComponent_BySuperClass E3dNodeComponent_ClassFindByName E3dNodeComponent_ClassRegister E3dNodeComponent_ClassDeactivate E3dNodeComponent_Add E3dNodeComponent_AddSingle E3dNodeComponent_Remove E3dNodeComponents_RemoveByClass E3dNodeComponents_RemoveAll E3dNodeComponent_AddCopy E3dNodes_CreateUniqueBranchList E3dNode_GetChildIndexGet the index of Node under its parent, following the NextSibling linksSyntax Argument Description If PNode has a parent, returns the position PNode in the parent's list of children (starting with 0). Return value The place of PNode under its parent, or the number of children under the parent, if PNode is not one of its children. E3dNodeComponent_ByClassFind a NodeComponent on a Node by its exact ClassSyntax Arguments Description Finds a NodeComponent on a Node, by its class, if it exists. Return value Pointer to the E3dNodeComponent, or NULL if none was found. See also E3dNodeComponent_BySuperClassFind Component of a Node by its Class or superclassSyntax Arguments Description Finds a NodeComponent on a Node, by its class, if it exists. Unlike E3dNodeComponent_ByClass, this function also checks for NodeComponent with a superclass of PClass. Return value Pointer to the E3dNodeComponent, or NULL if none was found. See also E3dNodeComponent_ClassFindByNameFind a NodeComponent class by its nameSyntax Arguments Description Return the NodeComponent registered by a given name, via E3dNodeComponent_ClassRegister. Return value Pointer to the NodeComponent class, or NULL if none was found. See also E3dNodeComponent_ClassRegisterRegister a new NodeComponent classSyntax Argument Description Registers a new E3dNodeComponentClass. Runtime-typed E3dNodeComponent records can be stored on E3dNodes to provide all kinds of dynamic information, such as: - Construction history (e.g. a root Node will remember that the hierarchy under it was created by the "Duplicate with repeat tool") - Inverse Kinematics joint and / or effector information. - Even things like XML schema element information for the XML schema viewer plugin! practically anything... Return value Pointer to the new E3dNodeComponentClass, or NULL in case of an error. See also E3dNodeComponent_ClassFindByName, E3dNodeComponent_ClassDeactivate, E3dNodeComponent_ClassesFree See also E3dNodeComponent_ClassDeactivateDeactivate an NodeComponentClassSyntax Argument Description Clears member function pointers etc. in the given Class, but keeps the Class registered. Usually called when the plugin that registered the Class is unloaded to be edited and reloaded on the fly. This allows for keeping the data associated with this class on instances when the code needs to be changed. The Class can be later re-activated when the plugin is reloaded. For example, if a bug is found in the Sphere plugin while testing a scene with, say 500 spheres, the plugin can be unloaded/changed/reloaded all without exiting EQUINOX-3D or deleting/recreating the 500 spheres. Return value None. See also E3dNodeComponent_AddAdd a NodeComponent of a given Class to a NodeSyntax Arguments Description Creates a new instance if NodeComponent of class PClass and adds it to PNode->Components. Return value Pointer to the new E3dNodeComponent, or NULL in case of an error. See also E3dNodeComponent_AddCopy See also E3dNodeComponent_AddSingleAdd a NodeComponent of a given Class to a NodeSyntax Arguments Description Similar to E3dNodeComponent_Add, but if NodeComponent of PClass already exists on PNode, it returns that. Return value Pointer to the new E3dNodeComponent, or NULL in case of an error. See also E3dNodeComponent_Add See also E3dNodeComponent_RemoveRemove a Component from a NodeSyntax Arguments Description Finds a NodeComponent on a Node and removes it. Return value E_SUCCESS, if successful, otherwise an error code, such as E_NOT_FOUND, or E_NO_DATA E3dNodeComponents_RemoveByClassRemove a Component from a NodeSyntax Arguments Description Removes all Component of a given class from a Node. Return value The number of Components removed, otherwise an error code, such as E_NOT_FOUND, or E_NO_DATA E3dNodeComponents_RemoveAllRemove all Component from a NodeSyntax Arguments Description Removes al NodeComponent from a Node. Return value None. E3dNodeComponent_AddCopyAdd a copy of a NodeComponent to a NodeSyntax Arguments Description Checks if POldComponent->Flags contains the flag EComponentCOPY. If so, it creates a copy of POldComponent and adds it to PNode->Components. Return value Pointer to the new E3dNodeComponent, or NULL in case of an error. See also E3dNodeComponent_Add See also E3dNodes_CreateUniqueBranchListCreate a list of branch roots, from a list of NodesSyntax Arguments Description Creates a "pruned" list of branch roots by removing Nodes that also have ancestors in the list. Return value The number of root Nodes in the resulting list |