PICloud with streampacker
This commit is contained in:
@@ -28,6 +28,7 @@
|
||||
|
||||
|
||||
class PIEthernet;
|
||||
class PIStreamPacker;
|
||||
|
||||
namespace PICloud {
|
||||
|
||||
@@ -40,27 +41,28 @@ public:
|
||||
};
|
||||
|
||||
enum Role {
|
||||
InvalidRole = 0,
|
||||
Server = 1,
|
||||
Client = 2,
|
||||
};
|
||||
|
||||
enum Type {
|
||||
Invalid = 0,
|
||||
InvalidType = 0,
|
||||
Connect = 1,
|
||||
Disconnect = 2,
|
||||
Data = 3,
|
||||
};
|
||||
|
||||
TCP();
|
||||
TCP(PIStreamPacker * s);
|
||||
void setRole(Role r);
|
||||
Role role() const {return (Role)header.role;}
|
||||
void setServerName(const PIString & server_name);
|
||||
|
||||
void sendStart(PIEthernet * eth);
|
||||
void sendConnected(PIEthernet * eth, uint client_id);
|
||||
void sendDisconnected(PIEthernet * eth, uint client_id);
|
||||
void sendData(PIEthernet * eth, const PIByteArray & data);
|
||||
int sendData(PIEthernet * eth, const PIByteArray & data, uint client_id);
|
||||
void sendStart();
|
||||
void sendConnected(uint client_id);
|
||||
void sendDisconnected(uint client_id);
|
||||
void sendData(const PIByteArray & data);
|
||||
int sendData(const PIByteArray & data, uint client_id);
|
||||
PIPair<PICloud::TCP::Type, PICloud::TCP::Role> parseHeader(PIByteArray & ba);
|
||||
PIByteArray parseData(PIByteArray & ba);
|
||||
PIPair<uint, PIByteArray> parseDataServer(PIByteArray & ba);
|
||||
@@ -78,6 +80,7 @@ private:
|
||||
|
||||
Header header;
|
||||
PIString sname;
|
||||
PIStreamPacker * streampacker;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user