Files
EntityLibrary/include/Orders/Order.hpp
2023-08-11 11:04:49 +02:00

43 lines
819 B
C++

#pragma once
#include <WHISPER/Messages/Message.hpp>
#include <SimCore/Identifier.hpp>
namespace Orders
{
enum OrderType: uint8_t
{
HOLD_ORDER,
MOVE_ORDER,
ENGAGE_ORDER,
SYSTEM_STATE_ORDER
};
class Order
{
public:
Order(const SimCore::Identifier OwnID, const Orders::OrderType OrderType_);
const SimCore::Identifier getOrderID();
const SimCore::Identifier getOwnID();
const Orders::OrderType getOrderType();
protected:
virtual WHISPER::Message buildMessage() = 0;
private:
const SimCore::Identifier orderID_;
const SimCore::Identifier OwnID_;
const Orders::OrderType OrderType_;
};
}