blob: 31feaa2383637872b0d12671c3a1b8f4e27b57ce [file]
#ifndef TOP_HH
#define TOP_HH
#include "umlrtcapsule.hh"
#include "umlrtcapsuleclass.hh"
#include "umlrtmessage.hh"
struct UMLRTCapsulePart;
struct UMLRTCommsPort;
struct UMLRTSlot;
class Capsule_Top : public UMLRTCapsule
{
public:
Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
enum PartId
{
part_pinger,
part_ponger
};
protected:
const UMLRTCapsulePart * const pinger;
const UMLRTCapsulePart * const ponger;
public:
virtual void bindPort( bool isBorder, int portId, int index );
virtual void unbindPort( bool isBorder, int portId, int index );
virtual void initialize( const UMLRTMessage & msg );
virtual void inject( const UMLRTMessage & msg );
};
extern const UMLRTCapsuleClass Top;
#endif