3ds Max C++ API Reference
INamedSelectionSetManager Class Referenceabstract

The Named Selection Sets management class. More...

#include <INamedSelectionSetManager.h>

+ Inheritance diagram for INamedSelectionSetManager:

Public Member Functions

virtual int GetNumNamedSelSets () const =0
 Get the count of all the named selection sets. More...
 
Named Selection Set functions.

The following functions deal with a specific named selection set.

virtual const MCHARGetNamedSelSetName (int setNum) const =0
 Get the name of the named selection set whose index is passed. More...
 
virtual BOOL AddNewNamedSelSet (Tab< INode * > &nodes, MSTR &name)=0
 Adds a new named selection set to those already available in the drop down list in the MAX toolbar. More...
 
virtual BOOL RemoveNamedSelSet (MSTR &name)=0
 Removes the specified named selection set those already available in the drop down list in the MAX toolbar. More...
 
virtual BOOL RemoveNamedSelSet (int setNum)=0
 Removes the specified named selection set those already available in the drop down list in the MAX toolbar. More...
 
virtual BOOL GetNamedSelSetList (Tab< INode * > &nodes, int setNum) const =0
 Get a specified named selection set by its index. More...
 
virtual BOOL SetNamedSelSetName (int setNum, MSTR &name)=0
 Sets node named selection set's name. Returns TRUE if successful. More...
 
Named Selection Set items functions.

The following functions deal with items of a specific named selection set.

virtual int GetNamedSelSetItemCount (int setNum) const =0
 Get the number of items in the named selection set whose index is passed. More...
 
virtual INodeGetNamedSelSetItem (int setNum, int i) const =0
 Get the specified node of a specified named selection set. More...
 
virtual BOOL ReplaceNamedSelSet (Tab< INode * > &nodes, int setNum)=0
 Replace the specified named selection set with given nodes. More...
 
virtual BOOL ReplaceNamedSelSet (Tab< INode * > &nodes, MSTR &name)=0
 Replace the specified named selection set with given nodes. More...
 
- Public Member Functions inherited from FPInterfaceDesc
CoreExport FPInterfaceDesc ()
 
CoreExport FPInterfaceDesc (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, ULONG flag,...)
 
CoreExport ~FPInterfaceDesc ()
 
virtual void Init ()
 
LifetimeType LifetimeControl ()
 
virtual BaseInterfaceGetInterface (Interface_ID id)
 
CoreExport void LoadDescriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *pCD, ULONG flag,...)
 
CoreExport void AppendFunction (int id,...)
 Add a new function to this interface descriptor. More...
 
CoreExport void AppendProperty (int id,...)
 Add a new property to this interface descriptor. More...
 
CoreExport void AppendEnum (int id,...)
 Add a new enum to this interface descriptor. More...
 
CoreExport void SetClassDesc (ClassDesc *i_cd)
 
CoreExport va_list check_fn (va_list ap, int id)
 
CoreExport va_list scan_fn (va_list ap, int id, int index)
 
CoreExport va_list check_prop (va_list ap, int id)
 
CoreExport va_list scan_prop (va_list ap, int id, int index)
 
CoreExport va_list check_enum (va_list ap, EnumID id)
 
CoreExport va_list scan_enum (va_list ap, EnumID id, int index)
 
FPInterfaceDescGetDesc ()
 
Interface_ID GetID ()
 
CoreExport FPFunctionDefGetFnDef (FunctionID fid)
 
ActionTableGetActionTable ()
 
CoreExport void EnableActions (BOOL onOff)
 
virtual CoreExport HINSTANCE HInstance ()
 
virtual CoreExport const MCHARGetRsrcString (StringResID id)
 
- Public Member Functions inherited from FPInterface
virtual CoreExport FPStatus Invoke (FunctionID fid, TimeValue t=0, FPParams *params=NULL)
 
virtual FPStatus Invoke (FunctionID fid, FPParams *params)
 
virtual CoreExport FPStatus Invoke (FunctionID fid, TimeValue t, FPValue &result, FPParams *params=NULL)
 
virtual FPStatus Invoke (FunctionID fid, FPValue &result, FPParams *params=NULL)
 
virtual CoreExport FunctionID FindFn (const MCHAR *name)
 
virtual CoreExport BOOL IsEnabled (FunctionID actionID)
 
virtual CoreExport BOOL IsChecked (FunctionID actionID)
 
virtual CoreExport BOOL IsVisible (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsEnabled (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsChecked (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsVisible (FunctionID actionID)
 
- Public Member Functions inherited from BaseInterface
virtual UtilExport ~BaseInterface ()
 Destructor. More...
 
virtual bool RegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
virtual void UnRegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
virtual BaseInterfaceAcquireInterface ()
 
virtual void ReleaseInterface ()
 
virtual void DeleteInterface ()
 
virtual BaseInterfaceCloneInterface (void *remapDir=nullptr)
 
- Public Member Functions inherited from InterfaceServer
virtual UtilExport ~InterfaceServer ()
 Destructor. More...
 
template<class InterfaceType >
InterfaceType * GetTypedInterface ()
 

Static Public Member Functions

static INamedSelectionSetManagerGetInstance ()
 Get the instance of INamedSelectionSetManager. More...
 
- 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...
 

Additional Inherited Members

- Public Types inherited from BaseInterface
enum  LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled }
 
- Public Attributes inherited from FPInterfaceDesc
Interface_ID ID
 
MSTR internal_name
 
StringResID description
 
ClassDesccd
 
USHORT flags
 
Tab< FPFunctionDef * > functions
 
Tab< FPPropDef * > props
 
Tab< FPEnum * > enumerations
 
MSPluginClasspc
 
Rolloutrollout
 
ActionTableaction_table
 
- Static Public Attributes inherited from FPInterface
static CoreExport FPInterfaceDesc nullInterface
 
- Protected Member Functions inherited from FPInterfaceDesc
CoreExport void load_descriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, USHORT flag, va_list ap)
 
- Protected Member Functions inherited from FPInterface
virtual FPStatus _dispatch_fn (FunctionID fid, TimeValue t, FPValue &result, FPParams *p)
 

Detailed Description

The Named Selection Sets management class.

The user may use functions exposed by this class to manage all the named selection sets of objects.

Note
This class DOES NOT deal with named selection sets of sub-objects but only named selection sets of objects.

Member Function Documentation

◆ GetInstance()

static INamedSelectionSetManager* GetInstance ( )
inlinestatic

Get the instance of INamedSelectionSetManager.

Returns
the instance of INamedSelectionSetManager.
31  {
32  return static_cast<INamedSelectionSetManager*>(
34  }
#define IID_NAMED_SELECTION_SET_MANAGER
Named Selection Set Manager interface ID.
Definition: INamedSelectionSetManager.h:16
The Named Selection Sets management class.
Definition: INamedSelectionSetManager.h:25
CoreExport Interface * GetCOREInterface()

◆ GetNumNamedSelSets()

virtual int GetNumNamedSelSets ( ) const
pure virtual

Get the count of all the named selection sets.

Returns
the count of all the named selection sets.

◆ GetNamedSelSetName()

virtual const MCHAR* GetNamedSelSetName ( int  setNum) const
pure virtual

Get the name of the named selection set whose index is passed.

Parameters
[in]setNum- The index of the named selection set.
Returns
the name of the named selection set if the given index is valid, NULL otherwise.

◆ AddNewNamedSelSet()

virtual BOOL AddNewNamedSelSet ( Tab< INode * > &  nodes,
MSTR name 
)
pure virtual

Adds a new named selection set to those already available in the drop down list in the MAX toolbar.

Parameters
[in]nodes- The table of nodes making up the selection set.
[in]name- The name for the set.
Returns
TRUE if the named selection set is successfully added,FALSE otherwise.

◆ RemoveNamedSelSet() [1/2]

virtual BOOL RemoveNamedSelSet ( MSTR name)
pure virtual

Removes the specified named selection set those already available in the drop down list in the MAX toolbar.

Parameters
[in]name- The name for the set to remove.
Returns
TRUE if the named selection set is successfully removed,FALSE otherwise.

◆ RemoveNamedSelSet() [2/2]

virtual BOOL RemoveNamedSelSet ( int  setNum)
pure virtual

Removes the specified named selection set those already available in the drop down list in the MAX toolbar.

Parameters
[in]setNum- The index of the specified named selection set.
Returns
TRUE if the named selection set is successfully removed,FALSE otherwise.

◆ GetNamedSelSetList()

virtual BOOL GetNamedSelSetList ( Tab< INode * > &  nodes,
int  setNum 
) const
pure virtual

Get a specified named selection set by its index.

Parameters
[out]nodes- The node set of the specified named selection set that is to be fatched.This node set will be filled only if the specified index is valid.
[in]setNum- The index of the specified named selection set. If the index is invalid, an empty nodes set is to be returned.
Returns
TRUE if the specified named set index is valid,FALSE otherwise.

◆ SetNamedSelSetName()

virtual BOOL SetNamedSelSetName ( int  setNum,
MSTR name 
)
pure virtual

Sets node named selection set's name. Returns TRUE if successful.

Parameters
[in]setNum- The selection set index.
[in]name- The new name for the selection set.
Returns
TRUE if the specified named selection set is found with its name set, FALSE otherwise.

◆ GetNamedSelSetItemCount()

virtual int GetNamedSelSetItemCount ( int  setNum) const
pure virtual

Get the number of items in the named selection set whose index is passed.

Parameters
[in]setNumThe index of the named selection set.
Returns
the number of items in the named selection set if the given index is valid, 0 otherwise.

◆ GetNamedSelSetItem()

virtual INode* GetNamedSelSetItem ( int  setNum,
int  i 
) const
pure virtual

Get the specified node of a specified named selection set.

This method may be used to retrieve the INode pointer of the 'i-th' item in the named selection set whose index is passed.

Parameters
[in]setNum- The index of the selection set whose 'i-th' INode pointer is returned.
[in]i- The index into the selection set.
Returns
the specified node if the given set index and node index is valid, NULL otherwise.

◆ ReplaceNamedSelSet() [1/2]

virtual BOOL ReplaceNamedSelSet ( Tab< INode * > &  nodes,
int  setNum 
)
pure virtual

Replace the specified named selection set with given nodes.

Parameters
[in]nodes- The given nodes to be filled into the named selection set.
[in]setNum- The index of the specified named selection set.
Returns
TRUE if the specified selection set is found and replaced, FALSE otherwise.

◆ ReplaceNamedSelSet() [2/2]

virtual BOOL ReplaceNamedSelSet ( Tab< INode * > &  nodes,
MSTR name 
)
pure virtual

Replace the specified named selection set with given nodes.

Parameters
[in]nodes- The given nodes to be filled into the named selection set.
[in]name- The name of the specified named selection set.
Returns
TRUE if the specified selection set is found and replaced, FALSE otherwise.