summaryrefslogtreecommitdiffstats
path: root/Master/Masterarbeit/src/common/inc/protocol.h
diff options
context:
space:
mode:
authorSven Eisenhauer <sven@sven-eisenhauer.net>2023-11-10 15:11:48 +0100
committerSven Eisenhauer <sven@sven-eisenhauer.net>2023-11-10 15:11:48 +0100
commit33613a85afc4b1481367fbe92a17ee59c240250b (patch)
tree670b842326116b376b505ec2263878912fca97e2 /Master/Masterarbeit/src/common/inc/protocol.h
downloadStudium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.gz
Studium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.bz2
add new repoHEADmaster
Diffstat (limited to 'Master/Masterarbeit/src/common/inc/protocol.h')
-rw-r--r--Master/Masterarbeit/src/common/inc/protocol.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/Master/Masterarbeit/src/common/inc/protocol.h b/Master/Masterarbeit/src/common/inc/protocol.h
new file mode 100644
index 0000000..e3e21ef
--- /dev/null
+++ b/Master/Masterarbeit/src/common/inc/protocol.h
@@ -0,0 +1,70 @@
+/*!
+ * \file protocol.h
+ * \author S. Eisenhauer
+ * \date 31.08.2011
+ * \brief Network protocol definition
+ *
+ * This file defines the network protocol used between XORAYA Connect and CanEasy
+ *
+ */
+#ifndef PROTOCOL_H_SEI
+#define PROTOCOL_H_SEI
+
+#include <boost/array.hpp>
+#include "global.h"
+
+/// default IP of the XORAYA connect
+#define nDEFAULT_IP _T("192.168.1.214")
+
+/// network port for communication
+#define nPORT (7010)
+
+/// size of network buffers in bytes
+#define nNETWORK_BUFFSIZE (512)
+
+/*!
+ * \brief type definition for network data buffer
+ */
+typedef boost::array<uint8_t,nNETWORK_BUFFSIZE> tNetworkBuffer;
+
+/*!
+ * \brief Enumeration of Network message types
+ */
+enum tenNetworkMessageType
+{
+ nenReqStartPlugin //!< Request for starting a target plugin
+ ,nenReqStopPlugin //!< Request for stopping a target plugin
+ ,nenReqShutdown //!< Request for shutting down all target components
+ ,nenReqImportLog //!< Request for importing a log file
+ ,nenReqEnumerateLogs //!< Request for enumerating available log files
+ ,nenReqEnumerateInterfaces //!< Request for enumerating hardware interfaces
+ ,nenReqChangeMsgData //!< Request for changing the data of a CAN TX message
+ ,nenReqUploadLogMsg //!< Request with log data
+ ,nenRespStartPlugin //!< Response for a start plugin request
+ ,nenRespStopPlugin //!< Response for a stop plugin request
+ ,nenRespShutdown //!< Response for a shutdown request
+ ,nenRespImportLog //!< Response for a import log request
+ ,nenRespEnumerateLogs //!< Response for a enumerate logs request
+ ,nenRespEnumerateInterfaces //!< Response for a enumerate interfaces request
+ ,nenRespChangeMsgData //!< Response for a change message data request
+ ,nenRespUploadLogMsg //!< Response for a upload log request
+ ,nenRespUnknownReq //!< Response for a unknown request
+ ,nenRespInvalidArg //!< Response for a request with invalid arguments
+ ,nenNumberOfNetworkMessageTypes //!< must be last
+};
+
+/*!
+ * \brief structure of network message header
+ */
+struct tstNetworkMessageHeader
+{
+ tenNetworkMessageType enMessageType; //!< type of the message
+ uint32_t u32MessageLength; //!< total length of network message. less or equal nNETWORK_BUFFSIZE
+};
+
+/// maximum length of the data part in a network message
+/// data size = message size - header size
+#define nNETWORK_DATALENGTH (nNETWORK_BUFFSIZE - sizeof(tstNetworkMessageHeader))
+
+
+#endif /* PROTOCOL_H_SEI */