Public Member Functions

Class_ID Class Reference

This reference page is linked to from the following overview topics: RTTI and GetInterface(), Parameter Tags, Application Data, Deformable Objects, Mappable Objects, Objects Flowing through the Pipeline, Simple Modifiers, Modifier Compatible Types, Mapping Coordinate Modifiers, Retrieving the Material from a Node, Accessing Material Properties, Tabbed Dialogs, Running Plug-ins, Generating Class IDs, Class Descriptors, Plug-in Identification, Converting Objects to Compatible Types, Indicating Required Input Object Types, Ring Array Creation Process.


Search for all occurrences

Detailed Description

See also:
Dll Functions and Class Descriptors, List of Class_IDs

Description:
This class represents the unique class ID for a 3ds Max plug-in. A plug-ins Class_ID must be unique. A program is provided with the SDK to generate these ClassIDs. It is VERY important you use this program to create the ClassIDs for your plug-ins. To generate a random Class_ID and optionally copy it to the clipboard, run the gencid.exe program. A Class_ID consists of two unsigned 32-bit quantities. The constructor assigns a value to each of these, for example Class_ID(0xCAD834E2, 0x27E47C5A).

All the methods of this class are implemented by the system.

#include <maxtypes.h>

Inheritance diagram for Class_ID:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  Class_ID ()
  Class_ID (const Class_ID &cid)
  Class_ID (ulong aa, ulong bb)
ULONG  PartA () const
ULONG  PartB () const
void  SetPartA (ulong aa)
void  SetPartB (ulong bb)
int  operator== (const Class_ID &cid) const
int  operator!= (const Class_ID &cid) const
Class_ID operator= (const Class_ID &cid)
bool  operator< (const Class_ID &rhs) const

Constructor & Destructor Documentation

Class_ID ( ) [inline]
Remarks:
Constructor.

Assigns a value of 0xFFFFFFFF to each 32-bit quantity.
{ a = b = 0xffffffff; }
Class_ID ( const Class_ID cid ) [inline]
Remarks:
Constructor.

Creates a new class ID with the same values as the argument.
Parameters:
const Class_ID& cid

A reference to the Class ID to copy.
{ a = cid.a; b = cid.b; }
Class_ID ( ulong  aa,
ulong  bb 
) [inline]
Remarks:
Constructor.

This is the standard constructor to be used by 3ds Max plug-ins. Each of the 32-bit quantities may be assigned separately.
Parameters:
ulong aa

Assigned to the first 32-bit quantity.

ulong bb

Assigned to the second 32-bit quantity.
{ a = aa; b = bb; }

Member Function Documentation

ULONG PartA ( ) const [inline]
Remarks:
Returns the first unsigned 32-bit quantity.
{ return a; }
ULONG PartB ( ) const [inline]
Remarks:
Returns the second unsigned 32-bit quantity.
Operators:
{ return b; }
void SetPartA ( ulong  aa ) [inline]
{ a = aa; } //-- Added 11/21/96 GG
void SetPartB ( ulong  bb ) [inline]
int operator== ( const Class_ID cid ) const [inline]
Remarks:
Checks for equality between two Class IDs.
{ return (a==cid.a&&b==cid.b); }
int operator!= ( const Class_ID cid ) const [inline]
Remarks:
Check for Inequality between two Class IDs.
{ return (a!=cid.a||b!=cid.b); }
Class_ID& operator= ( const Class_ID cid ) [inline]
Remarks:
Assignment operator. Note: In release 3.0 and later this method checks for self-assignment.
{ a=cid.a; b = cid.b; return (*this); }
bool operator< ( const Class_ID rhs ) const [inline]
Remarks:
This operator is available in release 4.0 and later only.

Less than operator. This returns true if the specified Class_ID's two parts are numerically less than this Class_ID's; false if not.
    {
        if ( a < rhs.a || ( a == rhs.a && b < rhs.b ) )
            return true;

        return false;
    }

Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID
Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID Class_ID