17 #include <pia/clone/clone_definitions.h> 18 #include <pia/clone/clone_CloneBase.h> 75 virtual void Trace(u64 flag)
const;
83 u32 GetReceiverBmp()
const 93 bool IsAnnounce()
const 95 return m_AnnounceCommandToken.IsInList();
103 u32 GetAnnounceBmp()
const 105 return m_AnnounceCommandToken.GetDestStationBitmap();
113 bool IsEnding()
const 115 return m_EndCommandToken.IsInList();
122 static Type GetTypeStatic()
126 static Key ToKey(
Id id)
130 virtual Type GetTypeVirtual()
const 132 return GetTypeStatic();
137 virtual void OnStartup();
138 virtual void OnCleanup();
139 virtual void OnEnd();
140 virtual void OnComplete();
141 virtual bool OnCheckEnd();
145 virtual void OnDisconnect(
StationIndex stationId,
bool isValid);
153 virtual bool IsReadyToSetValue()
const;
154 virtual u32 GetDestBitmap()
const;
156 virtual u64 GetRegisterCountAll()
const 158 return m_RegisterCountAll;
160 void SetRegisterCountAll(
StationIndex stationIndex, u8 count);
163 class AnnounceCommandToken :
public CommandToken
166 explicit AnnounceCommandToken(
SendClone* pClone)
167 : CommandToken(pClone), m_DestBitmap(0)
170 virtual CommandType GetType()
const 172 return COMMAND_ANNOUNCE;
174 virtual u32 GetDestStationBitmap()
const 178 void SetDestBitmap(u32 destBitmap)
180 m_DestBitmap = destBitmap;
184 m_DestBitmap &= ~(0x1 << stationId);
192 class EndCommandToken :
public CommandToken
195 explicit EndCommandToken(
SendClone* pClone)
196 : CommandToken(pClone)
199 virtual CommandType GetType()
const 203 virtual u32 GetDestStationBitmap()
const 205 return static_cast<const SendClone*
>(GetClone())->m_ReceiverBmp;
213 AnnounceCommandToken m_AnnounceCommandToken;
214 EndCommandToken m_EndCommandToken;
216 u64 m_RegisterCountAll;
219 template <
int TEST_ID,
typename Arg>
220 static void Test(
const SendClone& obj, Arg* pArg = NULL);
bool IsConnected(StationId stationId) const
Determines whether there is a ReceiveClone to receive data from this SendClone.
SendClone()
Instantiates the object with default parameters (default constructor).
u32 ClockValue
Defines a type that holds a clock value.
Definition: clone_definitions.h:44
StationIndex
Enumerates StationIndex values.
Definition: platformCtr.h:44
Definition of the StationId identifying the station within the session.
Definition: types.h:33
ID indicating a station that is not present in the session.
Definition: platformCtr.h:59
This class is a derivative of CloneBase and provides functionality for managing unidirectional sendin...
Definition: clone_SendClone.h:33
This is the base class for managing sending and receiving. .
Definition: clone_CloneBase.h:38
virtual void Trace(u64 flag) const
Prints information that is useful for debugging.
u32 Id
Specifies the type of the ID for identifying clones.
Definition: clone_CloneBase.h:68
bool IsConnectedWithAll() const
Determines whether all stations have a ReceiveClone to receive data from this SendClone.
virtual ~SendClone()
Destructor.