Robot Devastation
|
Allow for low-level access of members in tests / manipulating internal data. More...
#include <MockNetworkManager.hpp>
Public Member Functions | |
virtual bool | start () |
Start the network manager. More... | |
virtual bool | stop () |
Stop the network manager. | |
virtual bool | configure (const std::string ¶meter, const Player &value) |
Configures a parameter with a value. | |
virtual bool | sendPlayerHit (const Player &player, int damage) |
Communicate to the network that a player has been hit by the user. | |
virtual bool | login () |
Log the user into the network. | |
virtual bool | logout () |
Log the user out of the network. | |
virtual bool | keepAlive () |
Keeps the user connected to the server (requires to be called periodically) | |
bool | isLoggedIn () const |
bool | isStopped () const |
Returns true if manager is stopped (obviously) | |
bool | setPlayerData (const std::vector< Player > &game_players) |
std::vector< Player > | getPlayerData () const |
bool | sendPlayerData () |
bool | setLoggedIn (bool logged_in) |
Public Member Functions inherited from rd::NetworkManager | |
bool | addNetworkEventListener (NetworkEventListener *listener) |
Adds a NetworkEventListener to the list of observers to be notified of events. | |
bool | removeNetworkEventListeners () |
Unregisters all the NetworkEventListener stored. | |
bool | onTargetHit (const Target &target, const Player &player, const Weapon &weapon) |
Implementation of MentalMapEventListener interface. | |
bool | onRespawn (const Player &player) |
Implementation of MentalMapEventListener interface. | |
Static Public Member Functions | |
static bool | RegisterManager () |
Register this manager in the NetworkManager registry so that can be used. More... | |
Static Public Member Functions inherited from rd::NetworkManager | |
static NetworkManager * | getNetworkManager () |
Get a reference to the NetworkManager. More... | |
static NetworkManager * | getNetworkManager (const std::string &id) |
Get a reference to the NetworkManager. More... | |
static bool | destroyNetworkManager () |
Deallocate all the registered NetworkManager. | |
Static Public Attributes | |
static const std::string | id = "MOCK" |
String that identifies this manager. | |
Private Member Functions | |
MockNetworkManager () | |
Constructor. More... | |
MockNetworkManager (const MockNetworkManager &) | |
MockNetworkManager & | operator= (const MockNetworkManager &) |
Private Attributes | |
bool | logged_in |
bool | stopped |
Player | player |
std::vector< Player > | game_players |
std::map< int, Player > | players_dic |
Static Private Attributes | |
static MockNetworkManager * | uniqueInstance = NULL |
Reference to this manager (unique instance) | |
Additional Inherited Members | |
Static Protected Member Functions inherited from rd::NetworkManager | |
static bool | Register (NetworkManager *manager, const std::string &id) |
This function allows subclasses to install their unique instances in the singleton register to be selected later by the user. | |
Protected Attributes inherited from rd::NetworkManager | |
std::vector< NetworkEventListener * > | listeners |
Observers registered to be notified of network events. | |
MockNetworkManager is a singleton text (only one instance of this object can exist, that is is shared by all the users). To use this class, we first get the reference to the MockNetworkManager with getNetworkManager() and then we access the manager with that reference.
When the program finishes, the MockNetworkManager can be deallocated using destroyNetworkManager().
Network events are broadcasted to the registered listeners, along with the data relevant to the event triggered (i.e. data that just arrived).
|
private |
Constructor for this class is private, since the singleton can only be instantiated once, and the instantiation is done at the RegisterManager() method.
|
static |
It ensures that only one manager of this type is created (unique instance).
|
virtual |
This function is supposed to be called after NetworkManager configuration.
Implements rd::NetworkManager.