3ds Max C++ API Reference
ICopyCollection Class Referenceabstract

A collection of copies. More...

#include <Biped8Api.h>

+ Inheritance diagram for ICopyCollection:

Public Member Functions

virtual ~ICopyCollection ()
 Destructor. More...
 
virtual const MCHARGetName () const =0
 Gets the name of the copy collection. More...
 
virtual bool SetName (const MCHAR *name)=0
 Sets the name of the copy collection. More...
 
virtual int NumCopies (int copyType)=0
 Gets the number of copies of the specified type (posture/pose/track). More...
 
virtual IBipedCopyGetCopy (int copyType, int index)=0
 Gets the copy of the specified type at the specified index. More...
 
virtual IBipedCopyGetCopy (int copyType, const MCHAR *name, int *index)=0
 Gets a copy of the specified type with the specified name. More...
 
virtual bool DeleteCopy (int copyType, int index)=0
 Deletes a copy. More...
 
virtual void DeleteAllCopies (int copyType)=0
 Deletes all copies of a particular type (posture/pose/track) in a collection. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from MaxHeapOperators
static UtilExport voidoperator new (size_t size)
 Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e)
 Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate arrays of objects. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport void operator delete (void *ptr)
 Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, void *placement_ptr)
 Placement new operator. More...
 
static UtilExport void operator delete (void *ptr, void *placement_ptr)
 Placement delete operator. More...
 
static UtilExport voidaligned_malloc (size_t size, size_t alignment)
 Allocates memory on a specified alignment boundary. More...
 
static UtilExport voidaligned_realloc (void *ptr, size_t size, size_t alignment)
 Reallocates memory on a specified alignment boundary. More...
 
static UtilExport void aligned_free (void *ptr)
 Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. More...
 

Detailed Description

A collection of copies.

This contains a collection of IBipCopy objects - postures, poses, and tracks. Access to an IBipCopy object is based on its type and its index in the collection of copy objects. An instance of ICopyCollection can be gotten from the IBipDriver8 GetCopyCollection and CreateCopyCollection functions.

Constructor & Destructor Documentation

◆ ~ICopyCollection()

virtual ~ICopyCollection ( )
inlinevirtual

Destructor.

105 {;}

Member Function Documentation

◆ GetName()

virtual const MCHAR* GetName ( ) const
pure virtual

Gets the name of the copy collection.

Returns
the name of the copy

◆ SetName()

virtual bool SetName ( const MCHAR name)
pure virtual

Sets the name of the copy collection.

Precondition
name must be <= 256 characters
Parameters
[in]name- name of the copy collection
Returns
true if the name was set, false if it wasn't set

◆ NumCopies()

virtual int NumCopies ( int  copyType)
pure virtual

Gets the number of copies of the specified type (posture/pose/track).

Parameters
[in]copyType- type of copy, one of the following: COPY_POSTURE, COPY_POSE, COPY_TRACK
Returns
the number of copies of the specified type

◆ GetCopy() [1/2]

virtual IBipedCopy* GetCopy ( int  copyType,
int  index 
)
pure virtual

Gets the copy of the specified type at the specified index.

Parameters
[in]copyType- type of copy, one of the following: COPY_POSTURE, COPY_POSE, COPY_TRACK
[in]index- the index of the desired copy
Returns
the copy of the specified type at the specified index, and NULL if the copy was not found

◆ GetCopy() [2/2]

virtual IBipedCopy* GetCopy ( int  copyType,
const MCHAR name,
int index 
)
pure virtual

Gets a copy of the specified type with the specified name.

Parameters
[in]copyType- type of copy, one of the following: COPY_POSTURE, COPY_POSE, COPY_TRACK
[in]name- the name of the desired copy
[out]index- the index of the desired copy
Returns
the copy of the specified type with the specified name, and NULL if the copy was not found

◆ DeleteCopy()

virtual bool DeleteCopy ( int  copyType,
int  index 
)
pure virtual

Deletes a copy.

Parameters
[in]copyType- type of copy, one of the following: COPY_POSTURE, COPY_POSE, COPY_TRACK
[in]index- the index of the copy to delete
Returns
true if the copy was deleted, false if the copy was not found

◆ DeleteAllCopies()

virtual void DeleteAllCopies ( int  copyType)
pure virtual

Deletes all copies of a particular type (posture/pose/track) in a collection.

Parameters
[in]copyType- type of copy, one of the following: COPY_POSTURE, COPY_POSE, COPY_TRACK
Returns
true if the copies were deleted, false if the copy collection was not found