FCDPlaceHolder Class Reference
[COLLADA Document Object Model.]

A FCollada document placeholder. More...

#include <FCDPlaceHolder.h>

Inheritance diagram for FCDPlaceHolder:

FCDObject FUTracker FUParameterizable FUTrackable FUObject List of all members.

Public Member Functions

 FCDPlaceHolder (FCDocument *document, FCDocument *target=NULL)
 Constructor.
virtual ~FCDPlaceHolder ()
 Destructor.
FCDocumentGetTarget () const
 Retrieves the referenced FCollada document.
FCDocumentGetTarget (bool loadIfMissing=true)
 Retrieves the referenced FCollada document.
void LoadTarget (FCDocument *_target=NULL)
 [INTERNAL] Loads the referenced FCollada document.
void UnloadTarget ()
 Unloads and releases the referenced FCollada document.
bool IsTargetLoaded () const
 Retrieves whether the FCollada document referenced by this placeholder is currently loaded and available.
const fstringGetFileUrl () const
 Retrieves the URL of the referenced FCollada document.
void SetFileUrl (const fstring &url)
 Sets the URL of the referenced FCollada document.
void AddExternalReference (FCDEntityReference *reference)
 [INTERNAL] Registers an entity reference into out document.
void RemoveExternalReference (FCDEntityReference *reference)
 [INTERNAL] Removes an external reference from this placeholder's management list.
size_t GetExternalReferenceCount () const
 Retrieves the number of external references that references entities contained within the referenced FCollada document.
const FCDEntityReferenceGetExternalReference (size_t index) const
 Retrieves an indexed external reference.

Protected Member Functions

void OnObjectReleased (FUTrackable *object)
 [INTERNAL] Callback for the manual release of a loaded referenced FCollada document.

Detailed Description

A FCollada document placeholder.

This class is used to correctly support deferred external references. It contains the information necessary to find and open referenced FCollada documents and (re-)bind entity instances that use entities within the referenced FCollada document.


Constructor & Destructor Documentation

FCDPlaceHolder::FCDPlaceHolder FCDocument document,
FCDocument target = NULL
 

Constructor.

Parameters:
document The FCollada document that owns the placeholder.
target The FCollada document referenced by the placeholder.


Member Function Documentation

void FCDPlaceHolder::AddExternalReference FCDEntityReference reference  )  [inline]
 

[INTERNAL] Registers an entity reference into out document.

This external reference will be updated as the referenced FCollada document is loaded and unloaded.

Parameters:
reference An external reference.

const FCDEntityReference* FCDPlaceHolder::GetExternalReference size_t  index  )  const [inline]
 

Retrieves an indexed external reference.

Parameters:
index The index of the external reference.
Returns:
The external reference at the given index.

size_t FCDPlaceHolder::GetExternalReferenceCount  )  const [inline]
 

Retrieves the number of external references that references entities contained within the referenced FCollada document.

Returns:
The number of external references.

const fstring& FCDPlaceHolder::GetFileUrl  )  const
 

Retrieves the URL of the referenced FCollada document.

Returns:
The URL of the referenced FCollada document.

FCDocument* FCDPlaceHolder::GetTarget bool  loadIfMissing = true  ) 
 

Retrieves the referenced FCollada document.

Parameters:
loadIfMissing Whether the referenced document should be loaded when it is not already loaded.
Returns:
The referenced FCollada document. The NULL pointer will be returned when the referenced FCollada document could not be opened.

FCDocument* FCDPlaceHolder::GetTarget  )  const [inline]
 

Retrieves the referenced FCollada document.

Returns:
The referenced FCollada document. The NULL pointer will be returned when the referenced FCollada document is not loaded.

bool FCDPlaceHolder::IsTargetLoaded  )  const [inline]
 

Retrieves whether the FCollada document referenced by this placeholder is currently loaded and available.

Returns:
Whether the referenced document is available.

void FCDPlaceHolder::LoadTarget FCDocument _target = NULL  ) 
 

[INTERNAL] Loads the referenced FCollada document.

Parameters:
_target The FCollada document referenced by this placeholder. This pointer will be NULL to let the placeholder load the FCollada document it knows about.

void FCDPlaceHolder::OnObjectReleased FUTrackable object  )  [protected, virtual]
 

[INTERNAL] Callback for the manual release of a loaded referenced FCollada document.

Parameters:
object The released object pointer.

Implements FUTracker.

void FCDPlaceHolder::RemoveExternalReference FCDEntityReference reference  )  [inline]
 

[INTERNAL] Removes an external reference from this placeholder's management list.

Parameters:
reference An external reference currently managed by this placeholder.

void FCDPlaceHolder::SetFileUrl const fstring url  ) 
 

Sets the URL of the referenced FCollada document.

Parameters:
url The URL of the referenced FCollada document.


The documentation for this class was generated from the following file:
Generated on Thu Feb 14 16:58:40 2008 for FCollada by  doxygen 1.4.6-NO