Functions



Q3XError_Post


( void ) Q3XError_Post (
    TQ3Error error
);
Discussion

Post an error to the error manager.

Although intended only for use by extensions in QD3D, this call is also available to general application clients in Quesa.

Parameter Descriptions
error
The error to post.

Q3XMacintoshError_Post


( void ) Q3XMacintoshError_Post (
    OSErr macOSErr
);
Discussion

Post a Mac OS-specific error to the error manager.

Although intended only for use by extensions in QD3D, this call is also available to general application clients in Quesa.

Note that this call is equivalent to a call to Q3Error_PlatformPost, which is the preferred method for posting platform-specific errors.

Parameter Descriptions
macOSErr
The Mac OS error to post.

Q3XNotice_Post


( void ) Q3XNotice_Post (
    TQ3Notice notice
);
Discussion

Post a notice to the error manager.

Although intended only for use by extensions in QD3D, this call is also available to general application clients in Quesa.

Parameter Descriptions
notice
The notice to post.

Q3XObjectClass_GetLeafType


( TQ3ObjectType ) Q3XObjectClass_GetLeafType (
    TQ3XObjectClass objectClass
);
Discussion

Get the leaf type of a class.

The leaf type is the type returned by Q3XObjectHierarchy_RegisterClass when the class was registered.

Parameter Descriptions
objectClass
The class to query.
function result
The leaf type of the class.

Q3XObjectClass_GetMethod


( TQ3XFunctionPointer ) Q3XObjectClass_GetMethod (
    TQ3XObjectClass objectClass,
    TQ3XMethodType methodType
);
Discussion

Get a method of a class.

Parameter Descriptions
objectClass
The class to query.
methodType
The method type to retrieve.
function result
The function pointer for the method.

Q3XObjectClass_GetPrivate


( void * ) Q3XObjectClass_GetPrivate (
    TQ3XObjectClass objectClass,
    TQ3Object targetObject
);
Discussion

Get the private instance data of an object.

If no instance data space was reserved for the object, a NULL pointer will be returned.

Parameter Descriptions
objectClass
The class of the object.
targetObject
The object to query.
function result
A pointer to the private instance data.

Q3XObjectClass_GetType


( TQ3Status ) Q3XObjectClass_GetType (
    TQ3XObjectClass objectClass,
    TQ3ObjectType *theType
);
Discussion

Get the type of a class.

Parameter Descriptions
objectClass
The class to query.
theType
Receives the type of the class.
function result
Success or failure of the operation.

Q3XObjectHierarchy_FindClassByType


( TQ3XObjectClass ) Q3XObjectHierarchy_FindClassByType (
    TQ3ObjectType theType
);
Discussion

Locate a class within the class tree.

Parameter Descriptions
theType
The class type.
function result
The class registered under theType, or NULL.

Q3XObjectHierarchy_GetClassVersion


( TQ3Status ) Q3XObjectHierarchy_GetClassVersion (
    TQ3ObjectType objectClassType,
    TQ3XObjectClassVersion *version
);
Discussion

Get the version of a class.

The class version is returned by the class ClassVersion method.

Parameter Descriptions
objectClassType
The class to query.
version
Receives the version of the class.
function result
Success or failure of the operation.

Q3XObjectHierarchy_NewObject


( TQ3Object ) Q3XObjectHierarchy_NewObject (
    TQ3XObjectClass objectClass,
    void *parameters
);
Discussion

Instantiate a class.

Parameter Descriptions
objectClass
The class to instantiate.
parameters
The parameter data for the NewMethod method.
function result
A new instance of the class.

Q3XObjectHierarchy_RegisterClass


( TQ3XObjectClass ) Q3XObjectHierarchy_RegisterClass (
    TQ3ObjectType parentType,
    TQ3ObjectType *objectType,
    const char *objectName,
    TQ3XMetaHandler metaHandler,
    TQ3XMetaHandler virtualMetaHandler,
    TQ3Uns32 methodsSize,
    TQ3Uns32 instanceSize
);
Discussion

Register a new object class in the class tree.

Quesa does not support the virtualMetaHandler or methodsSize parameters, and these should be set to NULL and 0 respectively.

Virtual methods are inherited from the parent class metahandler in the Quesa class tree, and the QD3D docs are unclear on the purpose of methodsSize.

Parameter Descriptions
parentType
The object type of the parent the new class should be derived from. To derive new classes from the root TQ3Object class, pass in kQ3ObjectTypeInvalid.
objectType
Receives the new object type for the new class. This value is used as the class identifier in binary 3DMF files, and is returned by the _GetType and Q3Object_GetLeafType class. It may also be passed to Q3Object_IsType to identify objects of this class.
objectName
A C string which acts as a unique textual identifier for the new class. This value is used as the class identifier in text 3DMF files.
metaHandler
The metahandler for the class.
virtualMetaHandler
The virtual metahandler for the class (should be NULL).
methodsSize
The size of the private class data (shoudld be 0).
instanceSize
The size of the instance data for the class, if any.
function result
The new class reference.

Q3XObjectHierarchy_UnregisterClass


( TQ3Status ) Q3XObjectHierarchy_UnregisterClass (
    TQ3XObjectClass objectClass
);
Discussion

Unregister a object class from the class tree.

Only classes registered by Q3XObjectHierarchy_RegisterClass should be unregistered by this routine.

Parameter Descriptions
objectClass
The class to unregister.
function result
Success or failure of the operation.

Q3XObject_GetClass


( TQ3XObjectClass ) Q3XObject_GetClass (
    TQ3Object object
);
Discussion

Get the class of an object.

Parameter Descriptions
object
The object to query.
function result
The class of the object.

Q3XSharedLibrary_Register


( TQ3Status ) Q3XSharedLibrary_Register (
    TQ3XSharedLibraryInfo *sharedLibraryInfo
);
Discussion

Register a shared library with Quesa.

Can be called from within a shared library entry point to register a callback with Quesa. The callback will be invoked by Q3Initialize during initialisation, to allow it to register custom classes with the Quesa class tree.

Parameter Descriptions
sharedLibraryInfo
The shared library registration state.
function result
Success or failure of the operation.

Q3XSharedLibrary_Unregister


( TQ3Status ) Q3XSharedLibrary_Unregister (
    TQ3Uns32 sharedLibrary
);
Discussion

Unregister a shared library with Quesa.

The sharedLibrary parameter should match the sharedLibrary field within the TQ3XSharedLibraryInfo that was passed to Q3XSharedLibrary_Register.

Parameter Descriptions
sharedLibrary
The shared library reference.
function result
Success or failure of the operation.

Q3XWarning_Post


( void ) Q3XWarning_Post (
    TQ3Warning warning
);
Discussion

Post a warning to the error manager.

Although intended only for use by extensions in QD3D, this call is also available to general application clients in Quesa.

Parameter Descriptions
warning
The warning to post.

© 1999-2008 Quesa Developers (Last Updated 5/10/2008)