icustattribcontainer.h

Go to the documentation of this file.
00001 /**********************************************************************
00002  *<
00003     FILE:  ICustAttribContainer.h
00004 
00005     DESCRIPTION:  Defines ICustAttribContainer class
00006 
00007     CREATED BY: Nikolai Sander
00008 
00009     HISTORY: created 5/22/00
00010 
00011  *> Copyright (c) 2000, All Rights Reserved.
00012  **********************************************************************/
00013 #pragma once
00014 
00015 #include "ref.h"
00016 // forward declarations
00017 class CustAttrib;
00018 class ParamDlg;
00019 class IMtlParams;
00020 
00026 class ICustAttribContainer : public ReferenceTarget
00027 {
00028 public:
00030     virtual int GetNumCustAttribs()=0;
00036     virtual CustAttrib *GetCustAttrib(int i)=0;
00041     virtual void AppendCustAttrib(CustAttrib *attribute)=0;
00049     virtual void SetCustAttrib(int i, CustAttrib *attribute)=0;
00059     virtual void InsertCustAttrib(int i, CustAttrib *attribute)=0;
00064     virtual void RemoveCustAttrib(int i)=0;
00076     virtual ParamDlg* CreateParamDlg(HWND hwMtlEdit, IMtlParams* imp)=0;
00085         virtual void CopyParametersFrom(ReferenceMaker *from, RemapDir &remap)=0;
00088     virtual Animatable *GetOwner()=0;
00090     virtual void DeleteThis()=0;
00097     virtual BaseInterface* FindCustAttribInterface(const Interface_ID& iid) = 0;
00098 };
00099