Public Types | Public Member Functions

IChannelContainer Class Reference

Search for all occurrences

#include <IChannelContainer.h>

Inheritance diagram for IChannelContainer:
Inheritance graph
[legend]

List of all members.

Public Types

enum   { kGetPublicChannel, kGetPrivateChannel, kAddChannel }

Public Member Functions

BEGIN_FUNCTION_MAP  FN_2 (kGetPublicChannel, TYPE_IOBJECT, GetPublicChannel, TYPE_INT, TYPE_INT)
  FN_4 (kGetPrivateChannel, TYPE_IOBJECT, GetPrivateChannel, TYPE_INT, TYPE_INT, TYPE_OBJECT, TYPE_INODE)
  FN_1 (kAddChannel, TYPE_bool, AddChannel, TYPE_IOBJECT)
virtual Class_ID  GetClassID ()=0
  Returns the unique ID for the particle container class.
virtual int  NumChannels () const =0
  Returns number of channels in the container.
virtual IObject *&  GetChannel (int i)=0
  Returns i-th channel in the container.
virtual IObject GetChannel (Interface_ID id, Object *privateOwner=NULL, INode *creatorAction=NULL)=0
  Returns a channel with the given interface id.
IObject GetPublicChannel (int id_PartA, int id_PartB)
  FnPub alternative for the method virtual IObject* GetChannel.
IObject GetPrivateChannel (int id_PartA, int id_PartB, Object *privateOwner, INode *creatorAction)
  FnPub alternative for method virtual IObject* GetChannel.
virtual bool  AddChannel (IObject *channel)=0
  Returns true if the channel has been added.
virtual IObject EnsureChannel (Interface_ID &iChanID, Class_ID &channelClassID, bool isWrapper, Interface_ID &wrappingReadID, Interface_ID &wrappingWriteID, bool isTransferable=TRUE, INode *creatorAction=NULL, Object *privateOwner=NULL, bool *initChannel=NULL)=0
  Returns a channel object if a channel with the given interface id is in the container.
virtual BaseInterface EnsureInterface (Interface_ID &iChanID, Class_ID &channelClassID, bool isWrapper, Interface_ID &wrappingReadID, Interface_ID &wrappingWriteID, bool isTransferable=TRUE, INode *creatorAction=NULL, Object *privateOwner=NULL, bool *initChannel=NULL)=0
  Returns an interface if the interface with the given interface id is in the container.
virtual BaseInterface GetPrivateInterface (Interface_ID id, Object *privateOwner)=0
  Returns an interface of a channel with the given interface id and private owner.
virtual int  RemoveNonTransferableChannels (INode *nextParticleGroup=NULL)=0
  Returns an interface of a channel with the given interface id and private owner parameters:
iChanID: interface id of channel to be present in the container
privateOwner: the parameter is used to identify a private owner of the channel.
virtual IObject Clone ()=0
  Makes a clone copy of the whole container (all channels), returns new container.
virtual bool  Copy (IObject *container)=0
  Makes a copy from the other container, returns true if successful.
virtual IOResult  Save (ISave *isave) const =0
  Saves content of the channel to file.
virtual IOResult  Load (ILoad *iload)=0
  Loads content of the channel from file.
virtual int  MemoryUsed () const =0
  Returns amount of memory used (in bytes) by the channel container to store the information.
FPInterfaceDesc GetDesc ()

Member Enumeration Documentation

anonymous enum
Enumerator:
kGetPublicChannel 
kGetPrivateChannel 
kAddChannel 
         {  
//          kNumChannels,
//          kGetChannel,
            kGetPublicChannel,
            kGetPrivateChannel,
            kAddChannel
    };

Member Function Documentation

BEGIN_FUNCTION_MAP FN_2 ( kGetPublicChannel  ,
TYPE_IOBJECT  ,
GetPublicChannel  ,
TYPE_INT  ,
TYPE_INT   
)
FN_4 ( kGetPrivateChannel  ,
TYPE_IOBJECT  ,
GetPrivateChannel  ,
TYPE_INT  ,
TYPE_INT  ,
TYPE_OBJECT  ,
TYPE_INODE   
)
FN_1 ( kAddChannel  ,
TYPE_bool  ,
AddChannel  ,
TYPE_IOBJECT   
)

IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer
IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer IChannelContainer