00001 00004 /********************************************************************** 00005 *< 00006 CREATED BY: Oleg Bayborodin 00007 00008 HISTORY: created 9-19-01 00009 00010 *> Copyright (c) 2001, All Rights Reserved. 00011 **********************************************************************/ 00012 00013 #pragma once 00014 00015 #include "PFExport.h" 00016 #include "IParticleChannelAmount.h" 00017 #include "IChannelContainer.h" 00018 00019 class IParticleContainer: public IObject, 00020 public IChannelContainer, 00021 public IParticleChannelAmountR, 00022 public IParticleChannelAmountW 00023 { 00024 public: 00025 00033 // MCHAR* GetIObjectName(); 00034 00038 // int NumInterfaces(); 00039 00043 // BaseInterface* GetInterfaceAt(int index); 00044 00048 // BaseInterface* GetInterface(Interface_ID id); 00049 00053 // void AcquireIObject(); 00054 00058 // void ReleaseIObject(); 00059 00063 // void DeleteIObject(); 00064 00068 // FPInterfaceDesc* GetDescByID(Interface_ID id); 00069 00073 // int NumChannels() const; 00074 00078 // IObject* GetChannel(int i) const; 00079 00083 // bool AddChannel(IObject* channel); 00084 00088 // int Count() const; 00089 00093 // void ZeroCount(); 00094 00098 // bool SetCount(int n); 00099 00103 // int Delete(int start,int num); 00104 00108 // int Delete(BitArray& toRemove); 00109 00113 // FPInterface* Split(BitArray& toSplit); 00114 00118 // bool Spawn( Tab<int>& spawnTable ); 00119 00123 // bool AppendNum(int num); 00124 00128 // bool AppendChannel(IObject* channel); 00129 00133 // void DeleteThis() { DeleteIObject(); } 00134 }; 00135