3ds Max C++ API Reference
IOutputData Class Reference

Descripes an output entry which consists of an type description and pointer to the data Also lets the engine tell the modifier what channel it supports Other data that the engine needs to store per instance can also be stored here since the output data is stored on the modifier local data for modifiers. More...

#include <IMNMeshDataChannel.h>

+ Inheritance diagram for IOutputData:

Public Member Functions

 IOutputData ()
 Constructor. More...
 
 IOutputData (OutputDataType type, void *data)
 Constructor. More...
 
void SetData (OutputDataType type, void *data)
 Just a quick way to set the data and type. More...
 
ChannelType GetChannels () const
 Returns the channel that this data is appropriate for. More...
 
void SetChannels (ChannelType chan)
 Sets the channel that this data is appropriate for. More...
 
IndexChannel GetIndexChannel () const
 Returns the index channel that this data is appropriate for. More...
 
void SetIndexChannel (IndexChannel chan)
 Sets the index channel that this data is appropriate for. More...
 
OutputDataType GetType () const
 Returns the data description. More...
 
void SetType (OutputDataType type)
 Sets the data type of the channel. More...
 
voidGet () const
 Returns the pointer to the actual data. 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

Descripes an output entry which consists of an type description and pointer to the data Also lets the engine tell the modifier what channel it supports Other data that the engine needs to store per instance can also be stored here since the output data is stored on the modifier local data for modifiers.

Constructor & Destructor Documentation

◆ IOutputData() [1/2]

IOutputData ( )
inline

Constructor.

201  {
202  mType = kType_Int;
203  mChannelType = kChannel_NoChannelAssigned;
204  mIndexChannel = kIndexChannel_Position;
205  mData = nullptr;
206  }
@ kChannel_NoChannelAssigned
Face chanel which can include matids, smoothing groups etx.
Definition: IMNMeshDataChannel.h:101
@ kIndexChannel_Position
The data is not associated with any face indices ( things like edge or face data )
Definition: IMNMeshDataChannel.h:148
@ kType_Int
Definition: IMNMeshDataChannel.h:80

◆ IOutputData() [2/2]

IOutputData ( OutputDataType  type,
void data 
)
inline

Constructor.

Parameters
typedescribes the data to be used for output
datapointer to the actual data
213  {
214  mType = type;
215  mData = data;
216  }

Member Function Documentation

◆ SetData()

void SetData ( OutputDataType  type,
void data 
)
inline

Just a quick way to set the data and type.

Parameters
typedescribes the data to be used for output
datapointer to the actual data
224  {
225  mType = type;
226  mData = data;
227  }

◆ GetChannels()

ChannelType GetChannels ( ) const
inline

Returns the channel that this data is appropriate for.

229 { return mChannelType; }

◆ SetChannels()

void SetChannels ( ChannelType  chan)
inline

Sets the channel that this data is appropriate for.

Parameters
chanthe type of channel that we are setting
232 { mChannelType = chan; }

◆ GetIndexChannel()

IndexChannel GetIndexChannel ( ) const
inline

Returns the index channel that this data is appropriate for.

234 { return mIndexChannel; }

◆ SetIndexChannel()

void SetIndexChannel ( IndexChannel  chan)
inline

Sets the index channel that this data is appropriate for.

Parameters
chanthe type of index channel that we are setting
237 { mIndexChannel = chan; }

◆ GetType()

OutputDataType GetType ( ) const
inline

Returns the data description.

239 { return mType; }

◆ SetType()

void SetType ( OutputDataType  type)
inline

Sets the data type of the channel.

241 { mType = type; }

◆ Get()

void* Get ( ) const
inline

Returns the pointer to the actual data.

243 { return mData; }