- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# FCDObject Class Reference
[COLLADA Document Object Model.]

A basic COLLADA document object. More...

`#include <FCDObject.h>`

Inheritance diagram for FCDObject:

List of all members.

## Public Member Functions
| DeclareFlag (Transient, 0)
| Declare the flags to set various states available on an FCDObject Each Declare flag requires its local index. [EXPERIMENTAL] This object exists for the application to use.
| DeclareFlag (NewChild, 1)
| [EXPERIMENTAL] A new child has been assigned to this object.
| DeclareFlagCount (2)
| 5 flags are locally declared.
| FCDObject (FCDocument *document)
| Constructor: sets the COLLADA document object.
virtual | ~FCDObject ()
| Destructor.
FCDocument * | GetDocument ()
| Retrieves the COLLADA document which owns this object.
const FCDocument * | GetDocument () const
| See above.
bool | IsLocal (const FCDObject *object) const
| Retrieves whether a given object is a local reference from this object.
bool | IsExternal (const FCDObject *object) const
| Retrieves whether a given object is an external reference from this object.
void * | GetUserHandle () const
| Retrieves the object's user-specified handle.
void | SetUserHandle (void *handle)
| Sets the object's user-specified handle.
virtual void | SetValueChange ()
| ValueChangedFlag override, this allows objects to react if necessary.

## Detailed Description

A basic COLLADA document object.

All the objects owned by the COLLADA document derive from this class. The FCDocument object is accessible through this interface to all the object which it owns.

Space for an handle which has no meaning to FCollada is available in this base class, for our users. You can therefore attach your own objects to most FCollada objects. If you assign memory buffers to the user-specified handle, be aware that FCollada will make no attempt to release it.

32 flags are also available within this object. You can use the DeclareFlag and DeclareFlagCount macros to include flags within your custom classes. This object reverses the first four bits for its own flags: dirty, value changed, transient and new child.

All FCollada objects should set the dirty flag when modifications are made to the objects, but FCollada will never reset it. This flag should be used by multi-tier applications. This flag defaults to 'true'.

## Constructor & Destructor Documentation

FCDObject::FCDObject | ( | FCDocument * | document | ) |

  | Constructor: sets the COLLADA document object. Parameters:
  | document | The COLLADA document which owns this object.

## Member Function Documentation

FCDObject::DeclareFlag | ( | NewChild | ,
|  | 1 |
| ) |

| [EXPERIMENTAL] A new child has been assigned to this object. Should be replaced by the StructureChanged flag in future versions.

FCDObject::DeclareFlag | ( | Transient | ,
|  | 0 |
| ) |

| Declare the flags to set various states available on an FCDObject Each Declare flag requires its local index. [EXPERIMENTAL] This object exists for the application to use. It is required to DeclareFlagCount, declaring the amount of flags specified locally This object should be not archived/saved.

FCDocument* FCDObject::GetDocument | ( |  | ) | `[inline]`

| Retrieves the COLLADA document which owns this object. Returns: The COLLADA document.

void* FCDObject::GetUserHandle | ( |  | ) | const`[inline]`

| Retrieves the object's user-specified handle. This handle is available for users and has no meaning to FCollada. Returns: The object user-specified handle.

bool FCDObject::IsExternal | ( | const FCDObject * | object | ) | const`[inline]`

  | Retrieves whether a given object is an external reference from this object. Parameters:
  | object | A data object.
Returns: Whether a reference from this object to the given object is external.

bool FCDObject::IsLocal | ( | const FCDObject * | object | ) | const`[inline]`

  | Retrieves whether a given object is a local reference from this object. Parameters:
  | object | A data object.
Returns: Whether a reference from this object to the given object is local.

void FCDObject::SetUserHandle | ( | void * | handle | ) | `[inline]`

  | Sets the object's user-specified handle. This handle is available for users and has no meaning to FCollada. Parameters:
  | handle | The user-specified handle.

The documentation for this class was generated from the following file:

- FCDocument/FCDObject.h