|
24 | 24 | #define PROTOCOL_HPP |
25 | 25 |
|
26 | 26 | #include "utils/no_copy.hpp" |
| 27 | +#include "utils/constants.hpp" |
27 | 28 |
|
28 | 29 | #include <memory> |
29 | 30 | #include <stddef.h> |
@@ -121,72 +122,6 @@ class Protocol : public std::enable_shared_from_this<Protocol>, |
121 | 122 | NetworkString* getNetworkString(size_t capacity = 16) const; |
122 | 123 | bool checkDataSize(Event* event, unsigned int minimum_size); |
123 | 124 |
|
124 | | - // ---------------------------------------------------------------------------- |
125 | | - template<typename T> |
126 | | - typename std::enable_if<std::is_base_of<Packet, T>::value, void>::type |
127 | | - sendPacketToPeers(const T& packet, |
128 | | - PacketReliabilityMode reliable = PRM_RELIABLE) const |
129 | | - { |
130 | | - std::shared_ptr<T> ptr1 = std::make_shared<T>(packet); |
131 | | - std::shared_ptr<Packet> ptr2 = std::dynamic_pointer_cast<Packet>(ptr1); |
132 | | - return sendPacketPtrToPeers(ptr2, reliable); |
133 | | - } |
134 | | - |
135 | | - template<typename T> |
136 | | - typename std::enable_if<std::is_base_of<Packet, T>::value, void>::type |
137 | | - sendPacketToPeersInServer(const T& packet, |
138 | | - PacketReliabilityMode reliable = PRM_RELIABLE) const |
139 | | - { |
140 | | - std::shared_ptr<T> ptr1 = std::make_shared<T>(packet); |
141 | | - std::shared_ptr<Packet> ptr2 = std::dynamic_pointer_cast<Packet>(ptr1); |
142 | | - return sendPacketPtrToPeersInServer(ptr2, reliable); |
143 | | - } |
144 | | - |
145 | | - template<typename T> |
146 | | - typename std::enable_if<std::is_base_of<Packet, T>::value, void>::type |
147 | | - sendPacketToServer(const T& packet, |
148 | | - PacketReliabilityMode reliable = PRM_RELIABLE) |
149 | | - { |
150 | | - std::shared_ptr<T> ptr1 = std::make_shared<T>(packet); |
151 | | - std::shared_ptr<Packet> ptr2 = std::dynamic_pointer_cast<Packet>(ptr1); |
152 | | - return sendPacketPtrToServer(ptr2, reliable); |
153 | | - } |
154 | | - |
155 | | - |
156 | | - template<typename T> |
157 | | - typename std::enable_if<std::is_base_of<Packet, T>::value, void>::type |
158 | | - sendPacketExcept(std::shared_ptr<STKPeer> peer, const T& packet, |
159 | | - PacketReliabilityMode reliable = PRM_RELIABLE) |
160 | | - { |
161 | | - std::shared_ptr<T> ptr1 = std::make_shared<T>(packet); |
162 | | - std::shared_ptr<Packet> ptr2 = std::dynamic_pointer_cast<Packet>(ptr1); |
163 | | - return sendPacketPtrExcept(peer, ptr2, reliable); |
164 | | - } |
165 | | - |
166 | | - template<typename T> |
167 | | - typename std::enable_if<std::is_base_of<Packet, T>::value, void>::type |
168 | | - sendPacketToAllPeersWith(std::function<bool(std::shared_ptr<STKPeer>)> predicate, |
169 | | - const T& packet, PacketReliabilityMode reliable = PRM_RELIABLE) |
170 | | - { |
171 | | - std::shared_ptr<T> ptr1 = std::make_shared<T>(packet); |
172 | | - std::shared_ptr<Packet> ptr2 = std::dynamic_pointer_cast<Packet>(ptr1); |
173 | | - return sendPacketPtrToAllPeersWith(predicate, ptr2, reliable); |
174 | | - } |
175 | | - // ---------------------------------------------------------------------------- |
176 | | - void sendPacketPtrToPeers(std::shared_ptr<Packet> packet, |
177 | | - PacketReliabilityMode reliable = PRM_RELIABLE) const; |
178 | | - |
179 | | - void sendPacketPtrToPeersInServer(std::shared_ptr<Packet> packet, |
180 | | - PacketReliabilityMode reliable = PRM_RELIABLE) const; |
181 | | - |
182 | | - void sendPacketPtrToServer(std::shared_ptr<Packet> packet, |
183 | | - PacketReliabilityMode reliable = PRM_RELIABLE); |
184 | | - |
185 | | - void sendPacketPtrExcept(std::shared_ptr<STKPeer> peer, std::shared_ptr<Packet> packet, |
186 | | - PacketReliabilityMode reliable = PRM_RELIABLE); |
187 | | - |
188 | | - void sendPacketPtrToAllPeersWith(std::function<bool(std::shared_ptr<STKPeer>)> predicate, |
189 | | - std::shared_ptr<Packet> packet, PacketReliabilityMode reliable = PRM_RELIABLE); |
190 | 125 | // ---------------------------------------------------------------------------- |
191 | 126 | virtual void requestStart(); |
192 | 127 | virtual void requestTerminate(); |
|
0 commit comments