added everything
This commit is contained in:
78
lib/maxsdk70/include/iADTCategory.h
Executable file
78
lib/maxsdk70/include/iADTCategory.h
Executable file
@@ -0,0 +1,78 @@
|
||||
/**********************************************************************
|
||||
|
||||
FILE: IADTCategory.h
|
||||
|
||||
DESCRIPTION: Public intefaces that defines the concept of ADT Styles
|
||||
|
||||
CREATED BY: Attila Szabo, Discreet
|
||||
|
||||
HISTORY: - created Sep 29, 2002
|
||||
|
||||
*> Copyright (c) 1998-2002, All Rights Reserved.
|
||||
**********************************************************************/
|
||||
|
||||
#ifndef _IADTCATEGORY_H_
|
||||
#define _IADTCATEGORY_H_
|
||||
|
||||
#include "iFnPub.h"
|
||||
#include "maxtypes.h"
|
||||
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// Forward declarations
|
||||
class IADTStyle;
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// class IADTCategory
|
||||
//
|
||||
// This interface models an ADT Object category that has styles
|
||||
// Categories can be created and destroyed via the ADT Object Manager
|
||||
// Styles are added and deleted to\from categories by the ADT Object Manager
|
||||
// methods in order to ensure consistency of the data.
|
||||
//
|
||||
// Categories should be created and destroyed through the ADT Object Manager
|
||||
// See IADTStyle* GetStyle(const TCHAR* pCategName, const TCHAR* pStyleName);
|
||||
// An ADT Category is destroyed by the object manager when there are no styles
|
||||
// that is references. See iADTObjMgr for more details
|
||||
//________________________________________________________________________
|
||||
class IADTCategory : public ReferenceTarget, public FPMixinInterface
|
||||
{
|
||||
public:
|
||||
using ReferenceTarget::GetInterface;
|
||||
|
||||
// Access to name. The name is not case sensitive.
|
||||
virtual const TCHAR* GetName() const = 0;
|
||||
virtual void SetName(const TCHAR* pName) = 0;
|
||||
|
||||
// Returns NULL if the style does not exist
|
||||
virtual IADTStyle* FindStyle(const TCHAR* pStyleName) const = 0;
|
||||
|
||||
// TODO: styles iteration
|
||||
virtual unsigned long NumStyles() const = 0;
|
||||
virtual unsigned long GetStyles(Tab<IADTStyle*>& styles) const = 0;
|
||||
|
||||
// Returns the number of all nodes in the scene that represent instances of
|
||||
// all the styles that belong to this category.
|
||||
virtual unsigned long NumInstances() const = 0;
|
||||
|
||||
// Fills out the provided array with all the nodes in the scene that represent
|
||||
// instances of all the styles that belong to this category. Returns their count
|
||||
virtual unsigned long GetInstances(Tab<INode*>& instances) const = 0;
|
||||
|
||||
// Creates a name that is unique among the style names and it's
|
||||
// based on the given name. The unique name is seeded by passing in a seed-name
|
||||
// through the TSTR&
|
||||
// - TSTR& - Input\Output parameter. As input parameter, it represents a seed
|
||||
// for the the unique name. As output parameter, it holds the unique name that
|
||||
// was generated
|
||||
virtual void MakeUniqueStyleName(TSTR& name) const = 0;
|
||||
};
|
||||
|
||||
#define ADT_CATEGORY_INTERFACE Interface_ID(0x41030580, 0x7bce1c46)
|
||||
inline IADTCategory* GetADTCategoryInterface(BaseInterface* baseIfc)
|
||||
{
|
||||
DbgAssert( baseIfc != NULL);
|
||||
return static_cast<IADTCategory*>(baseIfc->GetInterface(ADT_CATEGORY_INTERFACE));
|
||||
}
|
||||
|
||||
#endif //_IADTCATEGORY_H_
|
||||
Reference in New Issue
Block a user