|
FBX C++ API Reference
|
FbxLayerElementArray is the base class for FbxLayerElementArrayTemplate, it provides lock handling and data array manipulation of the data buffer for FbxLayerElement. More...
#include <fbxlayer.h>
Inheritance diagram for FbxLayerElementArray:Public Types | |
| enum | ELockMode { eReadLock = 1, eWriteLock = 2, eReadWriteLock = 3 } |
| Identifies the access mode to the data buffer. More... | |
Public Member Functions | |
| bool | IsInUse () const |
| Returns whether this Array is accessed in any way. More... | |
| int | ReadLock () const |
| Increments the number of read locks on this array. More... | |
| int | ReadUnlock () const |
| Releases a read lock on this array. More... | |
| bool | WriteLock () const |
| Locks this array for writing. More... | |
| void | WriteUnlock () const |
| Releases the write lock on this array. More... | |
| bool | ReadWriteLock () const |
| Locks this array for writing. More... | |
| void | ReadWriteUnlock () const |
| Releases the write lock on this array. More... | |
| virtual void * | GetLocked (ELockMode pLockMode, EFbxType pDataType) |
| Grants a locked access to the data buffer. More... | |
| void * | GetLocked (ELockMode pLockMode=eReadWriteLock) |
| Grants a locked access to the data buffer. More... | |
| template<class T > | |
| T * | GetLocked (T *, ELockMode pLockMode=eReadWriteLock) |
| Grants a locked access to the data buffer. More... | |
| virtual void | Release (void **pDataPtr, EFbxType pDataType) |
| Unlock the data buffer. More... | |
| void | Release (void **pDataPtr) |
| Unlock the data buffer. More... | |
| template<class T > | |
| void | Release (T **pDataPtr, T *dummy) |
| Unlock the data buffer. More... | |
| virtual size_t | GetStride () const |
| Returns the Stride size which equals the size of the data type of the data buffer. More... | |
Protected Member Functions | |
| void * | GetDataPtr () |
| void * | GetReference (int pIndex, EFbxType pValueType) |
| void | GetReferenceTo (int pIndex, void **pRef, EFbxType pValueType) |
| void | SetStatus (LockAccessStatus::ELockAccessStatus pVal) const |
| void | SetImplementation (void *pImplementation) |
| void * | GetImplementation () |
| virtual void | ConvertDataType (EFbxType pDataType, void **pDataPtr, size_t *pStride) |
Protected Attributes | |
| EFbxType | mDataType |
Constructor and Destructor | |
| FbxLayerElementArray (EFbxType pDataType) | |
| Constructor. More... | |
| virtual | ~FbxLayerElementArray () |
| Destructor. More... | |
Status handling | |
| void | ClearStatus () |
| Clears the access state and sets it to eSuccess. More... | |
| LockAccessStatus::ELockAccessStatus | GetStatus () const |
| Retrieves the access state. More... | |
Locks handling | |
| bool | IsWriteLocked () const |
| Returns whether write is locked. More... | |
| int | GetReadLockCount () const |
| Retrieves the read lock count. More... | |
Data array manipulation | |
| int | GetCount () const |
| Returns the count of items in the data buffer. More... | |
| bool | SetCount (int pCount, EFbxMemoryClearMode pInitializeMode=eClearToZero) |
| Sets the count of items in the data buffer. More... | |
| void | Clear () |
| Clears the data buffer. More... | |
| bool | Resize (int pItemCount, EFbxMemoryClearMode pInitializeMode=eClearToZero) |
| Resizes the data buffer. More... | |
| bool | AddMultiple (int pItemCount, EFbxMemoryClearMode pInitializeMode=eClearToZero) |
| Appends space to the data buffer. More... | |
| int | Add (const void *pItem, EFbxType pValueType) |
| Appends a new item to the end of the data buffer. More... | |
| int | InsertAt (int pIndex, const void *pItem, EFbxType pValueType) |
| Inserts a new item at the specified position of the data buffer. More... | |
| void | SetAt (int pIndex, const void *pItem, EFbxType pValueType) |
| Sets the value for the specified item. More... | |
| void | SetLast (const void *pItem, EFbxType pValueType) |
| Sets the value of the last item. More... | |
| void | RemoveAt (int pIndex, void **pItem, EFbxType pValueType) |
| Removes the specified item from the data buffer. More... | |
| void | RemoveLast (void **pItem, EFbxType pValueType) |
| Removes the last item from the data buffer. More... | |
| bool | RemoveIt (void **pItem, EFbxType pValueType) |
| Removes one item from the data buffer. More... | |
| bool | GetAt (int pIndex, void **pItem, EFbxType pValueType) const |
| Returns the specified item's value. More... | |
| bool | GetFirst (void **pItem, EFbxType pValueType) const |
| Returns the first item's value. More... | |
| bool | GetLast (void **pItem, EFbxType pValueType) const |
| Returns the last item's value. More... | |
| int | Find (const void *pItem, EFbxType pValueType) const |
| Searches for an item in the data buffer. More... | |
| int | FindAfter (int pAfterIndex, const void *pItem, EFbxType pValueType) const |
| Searches for an item after the specified index in the data buffer. More... | |
| int | FindBefore (int pBeforeIndex, const void *pItem, EFbxType pValueType) const |
| Searches for an item before the specified index in the data buffer. More... | |
| bool | IsEqual (const FbxLayerElementArray &pArray) const |
| Equivalence operator. More... | |
| template<class T > | |
| int | Add (T const &pItem) |
| Appends a new item to the end of the data buffer. More... | |
| template<class T > | |
| int | InsertAt (int pIndex, T const &pItem) |
| Inserts a new item at the specified position of the data buffer. More... | |
| template<class T > | |
| void | SetAt (int pIndex, T const &pItem) |
| Sets the value of the specified item. More... | |
| template<class T > | |
| void | SetLast (T const &pItem) |
| Sets the value of the last item. More... | |
| template<class T > | |
| void | RemoveAt (int pIndex, T *pItem) |
| Removes the specified item from the data buffer. More... | |
| template<class T > | |
| void | RemoveLast (T *pItem) |
| Removes the last item from the data buffer. More... | |
| template<class T > | |
| bool | RemoveIt (T *pItem) |
| Removes one item from the data buffer. More... | |
| template<class T > | |
| bool | GetAt (int pIndex, T *pItem) const |
| Returns the specified item's value. More... | |
| template<class T > | |
| bool | GetFirst (T *pItem) const |
| Returns the first item's value. More... | |
| template<class T > | |
| bool | GetLast (T *pItem) const |
| Returns the last item's value. More... | |
| template<class T > | |
| int | Find (T const &pItem) const |
| Searches for an item in the data buffer. More... | |
| template<class T > | |
| int | FindAfter (int pAfterIndex, T const &pItem) const |
| Searches for an item after the specified index in the data buffer. More... | |
| template<class T > | |
| int | FindBefore (int pBeforeIndex, T const &pItem) const |
| Searches for one item before the specified index in the data buffer. More... | |
| template<typename T > | |
| void | CopyTo (FbxArray< T > &pDst) |
| Copies the items in the data buffer to an array. More... | |
FbxLayerElementArray is the base class for FbxLayerElementArrayTemplate, it provides lock handling and data array manipulation of the data buffer for FbxLayerElement.
Definition at line 338 of file fbxlayer.h.
| enum ELockMode |
Identifies the access mode to the data buffer.
| Enumerator | |
|---|---|
| eReadLock | |
| eWriteLock | |
| eReadWriteLock | |
Definition at line 425 of file fbxlayer.h.
| FbxLayerElementArray | ( | EFbxType | pDataType | ) |
Constructor.
| pDataType | The data type of the items in the data array. |
|
virtual |
Destructor.
|
inline |
Clears the access state and sets it to eSuccess.
Definition at line 362 of file fbxlayer.h.
|
inline |
|
inline |
Returns whether write is locked.
True if write is locked, false otherwise. Definition at line 376 of file fbxlayer.h.
|
inline |
Retrieves the read lock count.
Definition at line 381 of file fbxlayer.h.
| bool IsInUse | ( | ) | const |
Returns whether this Array is accessed in any way.
True if it is in use, false otherwise. | int ReadLock | ( | ) | const |
Increments the number of read locks on this array.
| int ReadUnlock | ( | ) | const |
Releases a read lock on this array.
| bool WriteLock | ( | ) | const |
Locks this array for writing.
The data in the array is wiped out.
True if a write lock has been successfully granted, false if one or more read locks are active. | void WriteUnlock | ( | ) | const |
Releases the write lock on this array.
| bool ReadWriteLock | ( | ) | const |
Locks this array for writing.
The data that already exists in the array is kept and is valid.
True if a write lock has been successfully granted, false if one or more read locks are active. | void ReadWriteUnlock | ( | ) | const |
Releases the write lock on this array.
Grants a locked access to the data buffer.
| pLockMode | Access mode to the data buffer. |
| pDataType | If defined, tries to return the data as this type. |
|
inline |
Grants a locked access to the data buffer.
| pLockMode | Access mode to the data buffer. |
Definition at line 457 of file fbxlayer.h.
|
inline |
Grants a locked access to the data buffer.
| pLockMode | Access mode to the data buffer. |
Definition at line 470 of file fbxlayer.h.
|
virtual |
Unlock the data buffer.
| pDataPtr | The buffer to be released. |
| pDataType | The data type of the data buffer. |
|
inline |
Unlock the data buffer.
| pDataPtr | The buffer to be released. |
Definition at line 493 of file fbxlayer.h.
|
inline |
Unlock the data buffer.
| pDataPtr | The buffer to be released. |
| dummy | The data type of dummy is used to specialize this function. |
Definition at line 505 of file fbxlayer.h.
|
virtual |
Returns the Stride size which equals the size of the data type of the data buffer.
| int GetCount | ( | ) | const |
Returns the count of items in the data buffer.
| bool SetCount | ( | int | pCount, |
| EFbxMemoryClearMode | pInitializeMode = eClearToZero |
||
| ) |
Sets the count of items in the data buffer.
| pCount | The count of items to be set. |
| pInitializeMode | Whether to clear the memory of any newly created items. |
True if the operation is successful and False if an error occurred. | void Clear | ( | ) |
Clears the data buffer.
| bool Resize | ( | int | pItemCount, |
| EFbxMemoryClearMode | pInitializeMode = eClearToZero |
||
| ) |
Resizes the data buffer.
| pItemCount | The new size of the data buffer. |
True if the operation is successful and False if an error occurred. | bool AddMultiple | ( | int | pItemCount, |
| EFbxMemoryClearMode | pInitializeMode = eClearToZero |
||
| ) |
Appends space to the data buffer.
| pItemCount | The appended space size |
True if the operation is successful and False if an error occurred. | int Add | ( | const void * | pItem, |
| EFbxType | pValueType | ||
| ) |
Appends a new item to the end of the data buffer.
| pItem | Pointer of the new item to be added |
| pValueType | Data type of the new item |
| int InsertAt | ( | int | pIndex, |
| const void * | pItem, | ||
| EFbxType | pValueType | ||
| ) |
Inserts a new item at the specified position of the data buffer.
| pIndex | The specified position |
| pItem | Pointer of the new item to be inserted |
| pValueType | Data type of the new item |
| void SetAt | ( | int | pIndex, |
| const void * | pItem, | ||
| EFbxType | pValueType | ||
| ) |
Sets the value for the specified item.
| pIndex | The index of the item to be updated. |
| pItem | Pointer of the item whose value is copied to pIndex'th item |
| pValueType | Data type of the item |
| void SetLast | ( | const void * | pItem, |
| EFbxType | pValueType | ||
| ) |
Sets the value of the last item.
| pItem | Pointer of the item whose value is copied to the last item |
| pValueType | Data type of the item |
| void RemoveAt | ( | int | pIndex, |
| void ** | pItem, | ||
| EFbxType | pValueType | ||
| ) |
Removes the specified item from the data buffer.
| pIndex | The index of the item to be removed |
| pItem | Place to hold the value of the removed item. |
| pValueType | Data type of the item |
| void RemoveLast | ( | void ** | pItem, |
| EFbxType | pValueType | ||
| ) |
Removes the last item from the data buffer.
| pItem | Place to hold the value of the removed item. |
| pValueType | Data type of the item |
| bool RemoveIt | ( | void ** | pItem, |
| EFbxType | pValueType | ||
| ) |
Removes one item from the data buffer.
| pItem | The first item who equals pItem is to be removed |
| pValueType | Data type of the item |
True if the item is removed successfully, false otherwise | bool GetAt | ( | int | pIndex, |
| void ** | pItem, | ||
| EFbxType | pValueType | ||
| ) | const |
Returns the specified item's value.
| pIndex | Index of the item |
| pItem | Place to hold the item's value |
| pValueType | Data type of the item |
True if the item's value is returned successfully, false otherwise | bool GetFirst | ( | void ** | pItem, |
| EFbxType | pValueType | ||
| ) | const |
Returns the first item's value.
| pItem | Place to hold the item's value |
| pValueType | Data type of the item |
True if the item's value is returned successfully, false otherwise | bool GetLast | ( | void ** | pItem, |
| EFbxType | pValueType | ||
| ) | const |
Returns the last item's value.
| pItem | Place to hold the item's value |
| pValueType | Data type of the item |
True if the item's value is returned successfully, false otherwise | int Find | ( | const void * | pItem, |
| EFbxType | pValueType | ||
| ) | const |
Searches for an item in the data buffer.
| pItem | The value of the item for which to search. |
| pValueType | Data type of the item |
| int FindAfter | ( | int | pAfterIndex, |
| const void * | pItem, | ||
| EFbxType | pValueType | ||
| ) | const |
Searches for an item after the specified index in the data buffer.
| pAfterIndex | The specified index after which the searching begins |
| pItem | The value of the item for which to search, the searching begins after pAfterIndex. |
| pValueType | Data type of the item |
| int FindBefore | ( | int | pBeforeIndex, |
| const void * | pItem, | ||
| EFbxType | pValueType | ||
| ) | const |
Searches for an item before the specified index in the data buffer.
| pBeforeIndex | The specified index before which the searching begins |
| pItem | The value of the item for which to search, the searching begins before pBeforeIndex. |
| pValueType | The item's data type. |
| bool IsEqual | ( | const FbxLayerElementArray & | pArray | ) | const |
Equivalence operator.
| pArray | Array compared to this one |
True if equal. false otherwise.
|
inline |
Appends a new item to the end of the data buffer.
| pItem | The new item to be added |
Definition at line 657 of file fbxlayer.h.
|
inline |
Inserts a new item at the specified position of the data buffer.
| pIndex | The specified position |
| pItem | The new item to be inserted |
Definition at line 665 of file fbxlayer.h.
|
inline |
Sets the value of the specified item.
| pIndex | The index of the item to be updated. |
| pItem | The item whose value is copied to pIndex'th item |
Definition at line 672 of file fbxlayer.h.
|
inline |
Sets the value of the last item.
| pItem | The item whose value is copied to the last item |
Definition at line 678 of file fbxlayer.h.
|
inline |
Removes the specified item from the data buffer.
| pIndex | The index of the item to be removed |
| pItem | Place to hold the value of the removed item. |
Definition at line 685 of file fbxlayer.h.
|
inline |
Removes the last item from the data buffer.
| pItem | Place to hold the value of the removed item. |
Definition at line 695 of file fbxlayer.h.
|
inline |
Removes one item from the data buffer.
| pItem | The first item who equals pItem is to be removed |
True if the item is removed successfully, false otherwise Definition at line 705 of file fbxlayer.h.
|
inline |
Returns the specified item's value.
| pIndex | Index of the item |
| pItem | Place to hold the item's value |
True if the item's value is returned successfully, false otherwise Definition at line 717 of file fbxlayer.h.
|
inline |
Returns the first item's value.
| pItem | Place to hold the item's value |
True if the item's value is returned successfully, false otherwise Definition at line 727 of file fbxlayer.h.
|
inline |
Returns the last item's value.
| pItem | Place to hold the item's value |
True if the item's value is returned successfully, false otherwise Definition at line 737 of file fbxlayer.h.
|
inline |
Searches for an item in the data buffer.
| pItem | The value of the item for which to search. |
Definition at line 748 of file fbxlayer.h.
|
inline |
Searches for an item after the specified index in the data buffer.
| pAfterIndex | The specified index after which the searching begins |
| pItem | The value of the item for which to search, the searching begins after pAfterIndex. |
Definition at line 756 of file fbxlayer.h.
|
inline |
Searches for one item before the specified index in the data buffer.
| pBeforeIndex | The specified index before which the searching begins |
| pItem | The value of the item for which to search, the searching begins before pBeforeIndex. |
Definition at line 764 of file fbxlayer.h.
|
inline |
Copies the items in the data buffer to an array.
| pDst | The destination array where the items are to be copied. |
Definition at line 770 of file fbxlayer.h.
|
protected |
|
protected |
|
protected |
|
inlineprotected |
Definition at line 799 of file fbxlayer.h.
|
protected |
|
inlineprotected |
Definition at line 805 of file fbxlayer.h.
|
protectedvirtual |
|
protected |
Definition at line 808 of file fbxlayer.h.