Modelos de comunicação
Domain/Address.h
namespace vss {
class Address {
public:
Address();
Address(std::string ip, int port);
friend std::ostream& operator<<(std::ostream& os, const Address& address);
void setIp(std::string ip);
void setPort(int port);
std::string getIp();
int getPort();
std::string getFullAddress();
std::string ip;
int port;
};
}
Domain/State.h
namespace vss {
class State {
public:
State();
State(Ball ball, std::vector<Robot> teamBlue, std::vector<Robot> teamYellow);
friend std::ostream& operator<<(std::ostream& os, const State& state);
Ball ball;
std::vector<Robot> teamBlue;
std::vector<Robot> teamYellow;
};
}
Domain/Command.h
namespace vss {
class Command {
public:
Command();
Command(int id, std::vector<WheelsCommand> commands);
friend std::ostream& operator<<(std::ostream& os, const Command& command);
int id;
std::vector<WheelsCommand> commands;
};
}
Domain/Debug.h
namespace vss {
class Debug {
public:
Debug();
Debug(std::vector<Point> stepPoints, std::vector<Pose> finalPoses, std::vector<Path> paths);
friend std::ostream& operator<<(std::ostream& os, const Debug& debug);
std::vector<Point> stepPoints;
std::vector<Pose> finalPoses;
std::vector<Path> paths;
};
}
Domain/Control.h
namespace vss {
class Control {
public:
Control();
Control(bool paused, Ball ball, std::vector<Robot> teamYellow, std::vector<Robot> teamBlue);
friend std::ostream& operator<<(std::ostream& os, const Control& control);
bool paused;
Ball ball;
std::vector<Robot> teamYellow;
std::vector<Robot> teamBlue;
};
}