Files
scandocs/uni/masterarbeit/source/moversight/ms/msg/LeaveAnnounce.h
2014-06-30 13:58:10 +02:00

50 lines
1.4 KiB
C++

#pragma once
#ifndef LEAVEANNOUNCE_H
#define LEAVEANNOUNCE_H
#include "common/Defines.h"
#include "common/container/PeerIDList.h"
#include "common/transport/msg/ExteriorMessage.h"
#include "mt/msg/MulticastMessage.h"
namespace ubeeme {
namespace moversight {
/**
* @brief Defines a leave announce message.
* @class LeaveAnnounce
* @ingroup Moversight
* @author Jan Gäbler, Robert Noack
*/
class LeaveAnnounce : public MulticastMessage {
public:
LeaveAnnounce();
LeaveAnnounce(const LeaveAnnounce & orig);
virtual ~LeaveAnnounce();
LeaveAnnounce & operator=(const LeaveAnnounce & other);
LeaveAnnounce * dup() const;
void handleReceive(Dispatcher & dis);
void handleDeliver(Dispatcher & dis, const PeerIDList & missedPeers);
virtual void set(Archive & archive);
// field getter/setter methods
const PeerIDList& getLeaveList() const;
void setLeaveList( const PeerIDList& leaveList);
const VirtualLogicalTime& getReferenceTime() const;
void setReferenceTime( const VirtualLogicalTime& referenceTime);
private:
PeerIDList leaveList;
VirtualLogicalTime referenceTime;
};
}
}
#endif /* LEAVEANNOUNCE_H */