net.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifndef _NET_H_
  2. #define _NET_H_
  3. #include "platform/platform.h"
  4. #include "core/dnet.h"
  5. #include "core/idGenerator.h"
  6. #include "core/stream/bitStream.h"
  7. #include "console/simBase.h"
  8. #include "console/console.h"
  9. #include "console/consoleTypes.h"
  10. #include "sim/netConnection.h"
  11. #include "sim/netObject.h"
  12. #include "app/net/serverQuery.h"
  13. #include "console/engineAPI.h"
  14. class RemoteCommandEvent : public NetEvent
  15. {
  16. public:
  17. typedef NetEvent Parent;
  18. enum {
  19. MaxRemoteCommandArgs = 20,
  20. CommandArgsBits = 5
  21. };
  22. private:
  23. S32 mArgc;
  24. char *mArgv[MaxRemoteCommandArgs + 1];
  25. NetStringHandle mTagv[MaxRemoteCommandArgs + 1];
  26. static char mBuf[1024];
  27. public:
  28. RemoteCommandEvent(S32 argc=0, const char **argv=NULL, NetConnection *conn = NULL);
  29. #ifdef TORQUE_DEBUG_NET
  30. const char *getDebugName();
  31. #endif
  32. ~RemoteCommandEvent();
  33. virtual void pack(NetConnection* conn, BitStream *bstream);
  34. virtual void write(NetConnection* conn, BitStream *bstream);
  35. virtual void unpack(NetConnection* conn, BitStream *bstream);
  36. virtual void process(NetConnection *conn);
  37. static void sendRemoteCommand(NetConnection *conn, S32 argc, const char **argv);
  38. static void removeTaggedString(S32);
  39. static const char* addTaggedString(const char* str);
  40. static const char* getTaggedString(const char* tag);
  41. DECLARE_CONOBJECT(RemoteCommandEvent);
  42. };
  43. #endif