summaryrefslogtreecommitdiffstats
path: root/pacman-c++/util.h
blob: 4c0ccb0787f18eab12580802fa02caa7bf9ce08c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef UTIL_H
#define UTIL_H

#include "constants.h"
#include "actor.h"
#include "pacman.pb.h"

class QTcpSocket;

namespace Util {
	Transmission::map_t createUninitialisedMap();

	Transmission::map_t createDummyMap();

	Transmission::map_t createEmptyMap();

	// default is to assert false with -1
	Transmission::field_t actorMovementToTransmission(Actor::Movement mov,
			Transmission::field_t def = -1);
	Actor::Movement transmissionMovementToActor(Transmission::field_t field,
			Actor::Movement def = Actor::Movement(-1));

	void QByteArrayToStdString(const QByteArray& arr, std::string& str);

	// send packet with error check and flush
	void sendPacket(const ::google::protobuf::Message& packet, QTcpSocket *socket);
	void sendPacket(const char *data, unsigned int length, QTcpSocket *socket);
}
#endif // UTIL_H