Base class for all Alias Data types.
Synopsis
#include <AlObject.h>
class AlObject : protected AlHashable
virtual ~AlObject();
virtual AlObjectType type() const = 0;
virtual const char* name() const;
virtual statusCode setName( const char* );
virtual statusCode deleteObject();
virtual AlObject* copyWrapper() const;
// Down casting methods
AlAnimatable* asAnimatablePtr();
AlClusterable* asClusterablePtr();
AlSettable* asSettablePtr();
AlPickable* asPickablePtr();
AlCamera* asCameraPtr();
AlCameraNode* asCameraNodePtr();
AlCluster* asClusterPtr();
AlClusterNode* asClusterNodePtr();
AlClusterMember* asClusterMemberPtr();
AlCurveCV* asCurveCVPtr();
AlCurve* asCurvePtr();
AlCurveNode* asCurveNodePtr();
AlCurveOnSurface* asCurveOnSurfacePtr();
AlDagNode* asDagNodePtr();
AlFace* asFacePtr();
AlFaceNode* asFaceNodePtr();
AlGroupNode* asGroupNodePtr();
AlLight* asLightPtr();
AlLightNode* asLightNodePtr();
AlAmbientLight* asAmbientLightPtr();
AlAreaLight* asAreaLightPtr();
AlDirectionLight* asDirectionLightPtr();
AlLinearLight* asLinearLightPtr();
AlNonAmbientLight* asNonAmbientLightPtr();
AlPointLight* asPointLightPtr();
AlSpotLight* asSpotLightPtr();
AlVolumeLight* asVolumeLightPtr();
AlSphereLight* asSphereLightPtr();
AlCylinderLight* asCylinderLightPtr();
AlBoxLight* asBoxLightPtr();
AlConeLight* asConeLightPtr();
AlTorusLight* asTorusLightPtr();
AlSurfaceCV* asSurfaceCVPtr();
AlSurface* asSurfacePtr();
AlSurfaceNode* asSurfaceNodePtr();
AlSet* asSetPtr();
AlSetMember* asSetMemberPtr();
AlShader* asShaderPtr();
AlTexture* asTexturePtr();
AlEnvironment* asEnvironmentPtr();
AlKeyframe* asKeyframePtr();
AlChannel* asChannelPtr();
AlAction* asActionPtr();
AlParamAction* asParamActionPtr();
AlMotionAction* asMotionActionPtr();
AlAttributes* asAttributesPtr();
AlArcAttributes* asArcAttributesPtr();
AlLineAttributes* asLineAttributesPtr();
AlCurveAttributes* asCurveAttributesPtr();
AlPlaneAttributes* asPlaneAttributesPtr();
AlConicAttributes* asConicAttributesPtr();
AlRevSurfAttributes* asRevSurfAttributesPtr();
AlJoint* asJointPtr();
AlConstraint* asConstraintPtr();
AlPointConstraint* asPointConstraintPtr();
AlOrientationConstraint* asOrientationConstraintPtr();
AlAimConstraint* asAimConstraintPtr();
AlTextureNode* asTextureNodePtr();
AlShellNode* asShellNodePtr();
AlShell* asShellPtr();
AlTrimRegion* asTrimRegionPtr();
AlTrimBoundary* asTrimBoundaryPtr();
AlTrimCurve* asTrimCurvePtr();
AlContact* asContactPtr();
AlCommandRef* asCommandRefPtr();
AlCommand* asCommandPtr();
AlLayer* asLayerPtr();
AlOrthographicCamera* asOrthographicCameraPtr();
AlPerspectiveCamera* asPerspectiveCameraPtr();
AlWindow* asWindowPtr();
AlImagePlane* asImagePlanePtr();
AlCharacterSpace* asCharacterSpacePtr();
AlCharacter* asCharacterPtr();
AlCharSnippet* asCharSnippetPtr();
AlCharTransition* asCharTransitionPtr();
AlIKHandle* asIKHandlePtr();
AlIKHandleNode* asIKHandleNodePtr();
AlLocator* asLocatorPtr();
AlAnnotationLocator* asAnnotationLocatorPtr();
AlDistanceLocator* asDistanceLocatorPtr();
AlAngleLocator* asAngleLocatorPtr();
AlRadialLocator* asRadialLocatorPtr();
AlDeviationLocator* asDeviationLocatorPtr();
AlMinmaxLocator* asMinmaxLocatorPtr();
AlPointLocator* asPointPtr();
AlSpaceLocator* asSpacePointPtr();
AlCurveLocator* asCurvePointPtr();
AlCurveOnSurfaceLocator* asCurveOnSurfacePointPtr();
AlSurfaceLocator* asSurfacePointPtr();
AlConstructionEntity* asConstructionEntityPtr();
AlConstructionVector* asConstructionVectorPtr();
AlConstructionPlane* asConstructionPlanePtr();
AlCloud* asCloudPtr();
AlBlendCurve* asBlendCurvePtr();
AlBlendPoint* asBlendPointPtr();
AlCategory* asCategoryPtr();
// Functions that operate on AlObjects that are not a part of the class:
boolean AlIsValid( const AlObject* );
boolean AlAreEqual( const AlObject*, const AlObject* );
Description
This is an abstract base class which holds a reference to an anonymous data structure. Derived classes will initialize the
reference to refer to a particular data structure. This class provides a mechanism for completely hiding the internal data
structures from the user.
This class gives some homogeneity between several different classes by providing methods that derived classes will redefine
so that the name and type of the object can be obtained and so that object downcasting can be done safely.
There are a group of functions (the ’downcasting’ methods) for casting an AlObject to one of its derived classes. They have
the form
Al{DerivedObject} *AlObject::as{DerivedObject}Ptr()
where {DerivedObject} is the name of the derived class. In this way, safe typecasting can be maintained.
AlObject::~AlObject()
Description
Destructor for AlObject class.
const char* AlObject::name() const
Description
Returns the name of the AlObject.
statusCode AlObject::setName( const char* name )
Description
Sets the name for an AlObject.
Arguments
< name - the new name for the object
Return Codes
sSuccess - name set
sFailure - the name could not be set
statusCode AlObject::deleteObject()
Description
Default deletion method for Alias objects. In general, calling this method on any object should delete the associated Alias object, and invalidate any OpenModel objects you have active that may reference that object.
Return Codes (see individual classes for more detailed information)
sSuccess - object deleted
sFailure - object not deleted
AlObject *AlObject::copyWrapper() const
Description
Returns a copy of the object upon which the method was called. The copy will have identical semantics to the passed-in object.
Note that both OpenModel objects will still refer to the same Alias object. No new Alias data is created.
boolean AlIsValid( AlObject* obj )
Description
Central function that checks that a given OpenModel pointer is in fact a valid object. Three checks will be done. The first
is done here, and simply checks that the pointer is non-null. The other two checks are done in the isValid method, which checks
that the object’s data field is valid, and finally that the object is in the currently active stage (universe).
Return Codes
TRUE - the object is valid
FALSE - the object is invalid
boolean AlAreEqual( const AlObject*, const AlObject* );
Description
Checks whether two OpenModel pointers are referencing the same Alias object. Note that the two pointers may reference different OpenModel objects, but those objects may both reference the same
Alias object. Use this function instead of just checking for pointer equality.
Note: if both pointers are NULL (and equal), FALSE is returned since we are not testing valid API objects.
Returns
TRUE - the two objects point to the same Alias object
FALSE - the two objects point to different Alias objects or both of the object pointers are NULL
AlAction* AlObject::asActionPtr()
Description
Returns a non-null pointer to an AlAction if it is safe to downcast the AlObject to it.
AlAimConstraint* AlObject::asAimConstraintPtr()
Description
Returns a non-null pointer to an AlAimConstraint if it is safe to downcast the AlObject to it.
AlAmbientLight* AlObject::asAmbientLightPtr()
Description
Returns a non-null pointer to an AlAmbientLight if it is safe to downcast the AlObject to it.
AlAnimatable* AlObject::asAnimatablePtr()
Description
Returns a non-null pointer to an AlAnimatable if it is safe to downcast the AlObject to it.
AlArcAttributes* AlObject::asArcAttributesPtr()
Description
Returns a non-null pointer to an AlArcAttributes if it is safe to downcast the AlObject to it.
AlAreaLight* AlObject::asAreaLightPtr()
Description
Returns a non-null pointer to an AlAreaLight if it is safe to downcast the AlObject to it.
AlAttributes* AlObject::asAttributesPtr()
Description
Returns a non-null pointer to an AlAttributes if it is safe to downcast the AlObject to it.
AlBoxLight* AlObject::asBoxLightPtr()
Description
Returns a non-null pointer to an AlBoxLight if it is safe to downcast the AlObject to it.
AlCamera* AlObject::asCameraPtr()
Description
Returns a non-null pointer to an AlCamera if it is safe to downcast the AlObject to it.
AlCameraNode* AlObject::asCameraNodePtr()
Description
Returns a non-null pointer to an AlCameraNode if it is safe to downcast the AlObject to it.
AlChannel* AlObject::asChannelPtr()
Description
Returns a non-null pointer to an AlChannel if it is safe to downcast the AlObject to it.
AlCharSnippet* AlObject::asCharSnippetPtr()
Description
Returns a non-null pointer to an AlCharSnippet if it is safe to downcast the AlObject to it.
AlCharTransition* AlObject::asCharTransitionPtr()
Description
Returns a non-null pointer to an AlCharTransition if it is safe to downcast the AlObject to it.
AlCharacter* AlObject::asCharacterPtr()
Description
Returns a non-null pointer to an AlCharacter if it is safe to downcast the AlObject to it.
AlCharacterSpace* AlObject::asCharacterSpacePtr()
Description
Returns a non-null pointer to an AlCharacterSpace if it is safe to downcast the AlObject to it.
AlClusterable* AlObject::asClusterablePtr()
Description
Returns a non-null pointer to an AlClusterable if it is safe to downcast the AlObject to it.
AlCluster* AlObject::asClusterPtr()
Description
Returns a non-null pointer to an AlCluster if it is safe to downcast the AlObject to it.
AlClusterMember* AlObject::asClusterMemberPtr()
Description
Returns a non-null pointer to an AlClusterMember if it is safe to downcast the AlObject to it.
AlClusterNode* AlObject::asClusterNodePtr()
Description
Returns a non-null pointer to an AlClusterNode if it is safe to downcast the AlObject to it.
AlCommand* AlObject::asCommandPtr()
Description
Returns a non-null pointer to an AlCommand if it is safe to downcast the AlObject to it.
AlCommandRef* AlObject::asCommandRefPtr()
Description
Returns a non-null pointer to an AlCommandRef if it is safe to downcast the AlObject to it.
AlConeLight* AlObject::asConeLightPtr()
Description
Returns a non-null pointer to an AlConeLight if it is safe to downcast the AlObject to it.
AlConicAttributes* AlObject::asConicAttributesPtr()
Description
Returns a non-null pointer to an AlConicAttributes if it is safe to downcast the AlObject to it.
AlConstraint* AlObject::asConstraintPtr()
Description
Returns a non-null pointer to an AlConstraint if it is safe to downcast the AlObject to it.
AlContact* AlObject::asContactPtr()
Description
Returns a non-null pointer to an AlContact if it is safe to downcast the AlObject to it.
AlCurve* AlObject::asCurvePtr()
Description
Returns a non-null pointer to an AlCurve if it is safe to downcast the AlObject to it.
AlCurveAttributes* AlObject::asCurveAttributesPtr()
Description
Returns a non-null pointer to an AlCurveAttributes if it is safe to downcast the AlObject to it.
AlCurveCV* AlObject::asCurveCVPtr()
Description
Returns a non-null pointer to an AlCurveCV if it is safe to downcast the AlObject to it.
AlCurveNode* AlObject::asCurveNodePtr()
Description
Returns a non-null pointer to an AlCurveNode if it is safe to downcast the AlObject to it.
AlCurveOnSurface* AlObject::asCurveOnSurfacePtr()
Description
Returns a non-null pointer to an AlCurveOnSurface if it is safe to downcast the AlObject to it.
AlCylinderLight* AlObject::asCylinderLightPtr()
Description
Returns a non-null pointer to an AlCylinderLight if it is safe to downcast the AlObject to it.
AlDagNode* AlObject::asDagNodePtr()
Description
Returns a non-null pointer to an AlDagNode if it is safe to downcast the AlObject to it.
AlDirectionLight* AlObject::asDirectionLightPtr()
Description
Returns a non-null pointer to an AlDirectionLight if it is safe to downcast the AlObject to it.
AlEnvironment* AlObject::asEnvironmentPtr()
Description
Returns a non-null pointer to an AlEnvironment if it is safe to downcast the AlObject to it.
AlFace* AlObject::asFacePtr()
Description
Returns a non-null pointer to an AlFace if it is safe to downcast the AlObject to it.
AlFaceNode* AlObject::asFaceNodePtr()
Description
Returns a non-null pointer to an AlFaceNode if it is safe to downcast the AlObject to it.
AlGroupNode* AlObject::asGroupNodePtr()
Description
Returns a non-null pointer to an AlGroupNode if it is safe to downcast the AlObject to it.
AlIKHandle* AlObject::asIKHandlePtr()
Description
Returns a non-null pointer to an AlIKHandle if it is safe to downcast the AlObject to it.
AlIKHandleNode* AlObject::asIKHandleNodePtr()
Description
Returns a non-null pointer to an AlIKHandleNode if it is safe to downcast the AlObject to it.
AlImagePlane* AlObject::asImagePlanePtr()
Description
Returns a non-null pointer to an AlImagePlane if it is safe to downcast the AlObject to it.
AlJoint* AlObject::asJointPtr()
Description
Returns a non-null pointer to an AlJoint if it is safe to downcast the AlObject to it.
AlKeyframe* AlObject::asKeyframePtr()
Description
Returns a non-null pointer to an AlKeyframe if it is safe to downcast the AlObject to it.
AlLayer* AlObject::asLayerPtr()
Description
Returns a non-null pointer to an AlLayer if it is safe to downcast the AlObject to it.
AlLight* AlObject::asLightPtr()
Description
Returns a non-null pointer to an AlLight if it is safe to downcast the AlObject to it.
AlLightNode* AlObject::asLightNodePtr()
Description
Returns a non-null pointer to an AlLightNode if it is safe to downcast the AlObject to it.
AlLineAttributes* AlObject::asLineAttributesPtr()
Description
Returns a non-null pointer to an AlLineAttributes if it is safe to downcast the AlObject to it.
AlLinearLight* AlObject::asLinearLightPtr()
Description
Returns a non-null pointer to an AlLinearLight if it is safe to downcast the AlObject to it.
AlMotionAction* AlObject::asMotionActionPtr()
Description
Returns a non-null pointer to an AlMotionAction if it is safe to downcast the AlObject to it.
AlNonAmbientLight* AlObject::asNonAmbientLightPtr()
Description
Returns a non-null pointer to an AlNonAmbientLight if it is safe to downcast the AlObject to it.
AlOrientationConstraint* AlObject::asOrientationConstraintPtr()
Description
Returns a non-null pointer to an AlOrientationConstraint if it is safe to downcast the AlObject to it.
AlOrthographicCamera* AlObject::asOrthographicCameraPtr()
Description
Returns a non-null pointer to an AlOrthographicCamera if it is safe to downcast the AlObject to it.
AlParamAction* AlObject::asParamActionPtr()
Description
Returns a non-null pointer to an AlParamAction if it is safe to downcast the AlObject to it.
AlPerspectiveCamera* AlObject::asPerspectiveCameraPtr()
Description
Returns a non-null pointer to an AlPerspectiveCamera if it is safe to downcast the AlObject to it.
AlPickable* AlObject::asPickablePtr()
Description
Returns a non-null pointer to an AlPickable if it is safe to downcast the AlObject to it.
AlPlaneAttributes* AlObject::asPlaneAttributesPtr()
Description
Returns a non-null pointer to an AlPlaneAttributes if it is safe to downcast the AlObject to it.
AlPointConstraint* AlObject::asPointConstraintPtr()
Description
Returns a non-null pointer to an AlPointConstraint if it is safe to downcast the AlObject to it.
AlPointLight* AlObject::asPointLightPtr()
Description
Returns a non-null pointer to an AlPointLight if it is safe to downcast the AlObject to it.
AlRevSurfAttributes* AlObject::asRevSurfAttributesPtr()
Description
Returns a non-null pointer to an AlRevSurfAttributes if it is safe to downcast the AlObject to it.
AlSettable* AlObject::asSettablePtr()
Description
Returns a non-null pointer to an AlSettable if it is safe to downcast the AlObject to it.
AlSet* AlObject::asSetPtr()
Description
Returns a non-null pointer to an AlSet if it is safe to downcast the AlObject to it.
AlSetMember* AlObject::asSetMemberPtr()
Description
Returns a non-null pointer to an AlSetMember if it is safe to downcast the AlObject to it.
AlShader* AlObject::asShaderPtr()
Description
Returns a non-null pointer to an AlShader if it is safe to downcast the AlObject to it.
AlShell* AlObject::asShellPtr()
Description
Returns a non-null pointer to an AlShell if it is safe to downcast the AlObject to it.
AlShellNode* AlObject::asShellNodePtr()
Description
Returns a non-null pointer to an AlShellNode if it is safe to downcast the AlObject to it.
AlSphereLight* AlObject::asSphereLightPtr()
Description
Returns a non-null pointer to an AlSphereLight if it is safe to downcast the AlObject to it.
AlSpotLight* AlObject::asSpotLightPtr()
Description
Returns a non-null pointer to an AlSpotLight if it is safe to downcast the AlObject to it.
AlSurface* AlObject::asSurfacePtr()
Description
Returns a non-null pointer to an AlSurface if it is safe to downcast the AlObject to it.
AlSurfaceCV* AlObject::asSurfaceCVPtr()
Description
Returns a non-null pointer to an AlSurfaceCV if it is safe to downcast the AlObject to it.
AlSurfaceNode* AlObject::asSurfaceNodePtr()
Description
Returns a non-null pointer to an AlSurfaceNode if it is safe to downcast the AlObject to it.
AlTexture* AlObject::asTexturePtr()
Description
Returns a non-null pointer to an AlTexture if it is safe to downcast the AlObject to it.
AlTextureNode* AlObject::asTextureNodePtr()
Description
Returns a non-null pointer to an AlTextureNode if it is safe to downcast the AlObject to it.
AlTorusLight* AlObject::asTorusLightPtr()
Description
Returns a non-null pointer to an AlTorusLight if it is safe to downcast the AlObject to it.
AlTrimBoundary* AlObject::asTrimBoundaryPtr()
Description
Returns a non-null pointer to an AlTrimBoundary if it is safe to downcast the AlObject to it.
AlTrimCurve* AlObject::asTrimCurvePtr()
Description
Returns a non-null pointer to an AlTrimCurve if it is safe to downcast the AlObject to it.
AlTrimRegion* AlObject::asTrimRegionPtr()
Description
Returns a non-null pointer to an AlTrimRegion if it is safe to downcast the AlObject to it.
AlVolumeLight* AlObject::asVolumeLightPtr()
Description
Returns a non-null pointer to an AlVolumeLight if it is safe to downcast the AlObject to it.
AlWindow* AlObject::asWindowPtr()
Description
Returns a non-null pointer to an AlWindow if it is safe to downcast the AlObject to it.
AlLocator* AlObject::asLocatorPtr()
Description
Returns a non-null pointer to an AlLocator if it is safe to downcast the AlObject to it.
AlPointLocator* AlObject::asPointPtr()
Description
Returns a non-null pointer to an AlPoint if it is safe to downcast the AlObject to it.
AlSpaceLocator* AlObject::asSpacePointPtr()
Description
Returns a non-null pointer to an AlSpacePoint if it is safe to downcast the AlObject to it.
AlCurveLocator* AlObject::asCurvePointPtr()
Description
Returns a non-null pointer to an AlCurvePoint if it is safe to downcast the AlObject to it.
AlCurveOnSurfaceLocator* AlObject::asCurveOnSurfacePointPtr()
Description
Returns a non-null pointer to an AlCurveOnSurfacePoint if it is safe to downcast the AlObject to it.
AlSurfaceLocator* AlObject::asSurfacePointPtr()
Description
Returns a non-null pointer to an AlSurfacePoint if it is safe to downcast the AlObject to it.
AlConstructionEntity* AlObject::asConstructionEntityPtr()
Description
This virtual function returns a non-null pointer to an AlConstructionEntity if it is safe to downcast the AlObject to it.
AlConstructionVector* AlObject::asConstructionVectorPtr()
Description
This virtual function returns a non-null pointer to an AlConstructionVector if it is safe to downcast the AlObject to it.
AlConstructionPlane* AlObject::asConstructionPlanePtr()
Description
This virtual function returns a non-null pointer to an AlConstructionPlane if it is safe to downcast the AlObject to it
AlAnnotationLocator * AlObject::asAnnotationLocatorPtr()
Description
Returns a non-null pointer to an AlAnnotationLocator if it is safe to downcast the AlObject to it.
AlDistanceLocator* AlObject::asDistanceLocatorPtr()
Description
Returns a non-null pointer to an AlDistanceLocator if it is safe to downcast the AlObject to it.
AlAngleLocator* AlObject::asAngleLocatorPtr()
Description
Returns a non-null pointer to an AlAngleLocator if it is safe to downcast the AlObject to it.
AlRadialLocator* AlObject::asRadialLocatorPtr()
Description
Returns a non-null pointer to an AlRadialLocator if it is safe to downcast the AlObject to it.
AlDeviationLocator* AlObject::asDeviationLocatorPtr()
Description
Returns a non-null pointer to an AlDeviationLocator if it is safe to downcast the AlObject to it.
AlMinmaxLocator* AlObject::asMinmaxLocatorPtr()
Description
Returns a non-null pointer to an AlMinmaxLocator if it is safe to downcast the AlObject to it.
AlCloud* AlObject::asCloudPtr()
Description
Returns a non-null pointer to an AlCloud if it is safe to downcast the AlObject to it.
AlBlendCurve* AlObject::asBlendCurvePtr()
Description
Returns a non-null pointer to an AlBlendCurve if it is safe to downcast the AlObject to it.
AlBlendPoint* AlObject::asBlendPointPtr()
Description
Returns a non-null pointer to an AlBlendPoint if it is safe to downcast the AlObject to it.
AlCategory* AlObject::asCategoryPtr()
Description
Returns a non-null pointer to an AlCategory if it is safe to downcast the AlObject to it.