Isle
|
[AI] Specialized pointer list for managing a collection of LegoCacheSound objects, providing comparison and list management. More...
#include <legocachesoundlist.h>
Public Member Functions | |
LegoCacheSoundList (MxBool p_ownership=FALSE) | |
[AI] Construct a LegoCacheSoundList with optional ownership setting. More... | |
MxS8 | Compare (LegoCacheSound *p_a, LegoCacheSound *p_b) override |
[AI] Compare two LegoCacheSound pointer values for list ordering. More... | |
![]() | |
MxPtrList (MxBool p_ownership) | |
[AI] More... | |
void | SetOwnership (MxBool p_ownership) |
[AI] More... | |
![]() | |
MxList () | |
[AI] Constructor. Initializes the list pointers to null (empty list). [AI] More... | |
~MxList () override | |
[AI] Destructor. Deletes all entries in the list and manages resource ownership. [AI] More... | |
void | Append (T p_obj) |
[AI] More... | |
void | Prepend (T p_obj) |
[AI] More... | |
void | DeleteAll () |
[AI] More... | |
void | Empty () |
[AI] More... | |
MxU32 | GetNumElements () |
[AI] More... | |
Additional Inherited Members | |
![]() | |
static void | Destroy (LegoCacheSound *p_obj) |
[AI] More... | |
![]() | |
void | DeleteEntry (MxListEntry< T > *) |
[AI] More... | |
MxListEntry< T > * | InsertEntry (T, MxListEntry< T > *, MxListEntry< T > *) |
[AI] More... | |
![]() | |
MxCollection () | |
[AI] Constructs an empty collection, initializing count and default element destructor. More... | |
virtual MxS8 | Compare (T a, T b) |
[AI] Compares two elements of the collection (default implementation returns zero; override in subclasses for meaningful comparison). More... | |
~MxCollection () override | |
[AI] Virtual destructor for proper polymorphic destruction. More... | |
void | SetDestroy (void(*p_customDestructor)(T)) |
[AI] Assigns a custom destructor function to be used for elements of this collection. More... | |
![]() | |
MxCore () | |
[AI] Constructs a new MxCore object and assigns it a unique id. More... | |
virtual | ~MxCore () |
[AI] Virtual destructor. Required for correct polymorphic cleanup in derived classes. More... | |
virtual MxLong | Notify (MxParam &p_param) |
[AI] Virtual callback notification mechanism. More... | |
virtual MxResult | Tickle () |
[AI] Called by tickle managers to allow the object to update itself. More... | |
virtual const char * | ClassName () const |
[AI] Returns the runtime class name of this object. More... | |
virtual MxBool | IsA (const char *p_name) const |
[AI] Checks whether this object's class type or parents match the given name. More... | |
MxU32 | GetId () |
[AI] Gets the unique (per-process) id assigned to this object instance. More... | |
![]() | |
static void | Destroy (T obj) |
[AI] Static no-op destroy function; suitable for types that do not need destruction. More... | |
![]() | |
MxListEntry< T > * | m_first |
[AI] Pointer to the first entry in the list. [AI] More... | |
MxListEntry< T > * | m_last |
[AI] Pointer to the last entry in the list. [AI] More... | |
![]() | |
MxU32 | m_count |
[AI] Number of elements currently stored in the collection. More... | |
void(* | m_customDestructor )(T) |
[AI] Function pointer to the custom element destructor used for cleanup of elements. More... | |
[AI] Specialized pointer list for managing a collection of LegoCacheSound objects, providing comparison and list management.
[AI] LegoCacheSoundList serves as a strongly typed container for LegoCacheSound pointers, managing ownership and order using MxPtrList as its base. Typical usage is to cache sound assets for reuse within the game, allowing efficient search and lifecycle management. The Compare function provides a way to order or uniquely identify sounds based on pointer value, which is important for pointer-based collections and deduplication of sound entries. Ownership semantics can be controlled on construction.
Definition at line 23 of file legocachesoundlist.h.
[AI] Construct a LegoCacheSoundList with optional ownership setting.
p_ownership | Indicates whether the list owns the pointed LegoCacheSound objects and is responsible for deleting them. [AI] |
[AI] If ownership is true, the list will delete LegoCacheSound objects when removing them from the container or when the list is destroyed. If false, the caller manages the object lifetime.
Definition at line 30 of file legocachesoundlist.h.
|
inlineoverride |
[AI] Compare two LegoCacheSound pointer values for list ordering.
p_a | First LegoCacheSound pointer to compare. [AI] |
p_b | Second LegoCacheSound pointer to compare. [AI] |
[AI] Used by the list to sort or identify uniqueness. This comparison is strictly on pointer value, not underlying sound data content; useful for managing objects within pointer-based collections. Implements and overrides the virtual method from the parent MxPtrList. [AI]
Definition at line 39 of file legocachesoundlist.h.