summaryrefslogtreecommitdiff
path: root/implementation/configuration/include/internal.hpp.in
diff options
context:
space:
mode:
Diffstat (limited to 'implementation/configuration/include/internal.hpp.in')
-rw-r--r--implementation/configuration/include/internal.hpp.in61
1 files changed, 43 insertions, 18 deletions
diff --git a/implementation/configuration/include/internal.hpp.in b/implementation/configuration/include/internal.hpp.in
index 64b7105..d7770c9 100644
--- a/implementation/configuration/include/internal.hpp.in
+++ b/implementation/configuration/include/internal.hpp.in
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2015 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
+// Copyright (C) 2014-2016 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
@@ -26,20 +26,25 @@
#define VSOMEIP_ROUTING "@VSOMEIP_ROUTING@"
#define VSOMEIP_ROUTING_CLIENT 0
+#define VSOMEIP_ROUTING_INFO_SIZE_INIT 256
#ifdef WIN32
#define VSOMEIP_INTERNAL_BASE_PORT 51234
+#define __func__ __FUNCTION__
#endif
#define VSOMEIP_UNICAST_ADDRESS "@VSOMEIP_UNICAST_ADDRESS@"
#define VSOMEIP_DEFAULT_CONNECT_TIMEOUT 100
+#define VSOMEIP_MAX_CONNECT_TIMEOUT 1000
#define VSOMEIP_DEFAULT_FLUSH_TIMEOUT 1000
-#define VSOMEIP_DEFAULT_WATCHDOG_CYCLE 5000
#define VSOMEIP_DEFAULT_WATCHDOG_TIMEOUT 5000
#define VSOMEIP_DEFAULT_MAX_MISSING_PONGS 3
+#define VSOMEIP_MAX_DISPATCHERS 10
+#define VSOMEIP_MAX_DISPATCH_TIME 100
+
#define VSOMEIP_COMMAND_HEADER_SIZE 7
#define VSOMEIP_COMMAND_TYPE_POS 0
@@ -62,33 +67,53 @@
#define VSOMEIP_UNSUBSCRIBE 0x13
#define VSOMEIP_REQUEST_SERVICE 0x14
#define VSOMEIP_RELEASE_SERVICE 0x15
-
-#define VSOMEIP_SEND 0x17
-#define VSOMEIP_NOTIFY 0x18
-
-#define VSOMEIP_REGISTER_EVENT 0x19
-#define VSOMEIP_UNREGISTER_EVENT 0x1A
-
-#define VSOMEIP_OFFER_SERVICE_COMMAND_SIZE 20
-#define VSOMEIP_REQUEST_SERVICE_COMMAND_SIZE 21
-#define VSOMEIP_STOP_OFFER_SERVICE_COMMAND_SIZE 11
-#define VSOMEIP_SUBSCRIBE_COMMAND_SIZE 19
+#define VSOMEIP_SUBSCRIBE_NACK 0x16
+#define VSOMEIP_SUBSCRIBE_ACK 0x17
+
+#define VSOMEIP_SEND 0x18
+#define VSOMEIP_NOTIFY 0x19
+#define VSOMEIP_NOTIFY_ONE 0x1A
+
+#define VSOMEIP_REGISTER_EVENT 0x1B
+#define VSOMEIP_UNREGISTER_EVENT 0x1C
+#define VSOMEIP_ID_RESPONSE 0x1D
+
+#define VSOMEIP_OFFER_SERVICE_COMMAND_SIZE 16
+#define VSOMEIP_REQUEST_SERVICE_COMMAND_SIZE 17
+#define VSOMEIP_RELEASE_SERVICE_COMMAND_SIZE 11
+#define VSOMEIP_STOP_OFFER_SERVICE_COMMAND_SIZE 16
+#define VSOMEIP_SUBSCRIBE_COMMAND_SIZE 16
+#define VSOMEIP_SUBSCRIBE_ACK_COMMAND_SIZE 13
+#define VSOMEIP_SUBSCRIBE_NACK_COMMAND_SIZE 13
#define VSOMEIP_UNSUBSCRIBE_COMMAND_SIZE 13
#define VSOMEIP_REGISTER_EVENT_COMMAND_SIZE 15
-#define VSOMEIP_UNREGISTER_EVENT_COMMAND_SIZE 13
+#define VSOMEIP_UNREGISTER_EVENT_COMMAND_SIZE 14
-#include <mutex>
+#ifndef WIN32
+#include <pthread.h>
+#endif
#define VSOMEIP_DATA_ID 0x677D
#define VSOMEIP_SHM_NAME "/vsomeip"
#define VSOMEIP_DIAGNOSIS_ADDRESS @VSOMEIP_DIAGNOSIS_ADDRESS@
+#define VSOMEIP_DEFAULT_SHM_PERMISSION 0666
+#define VSOMEIP_DEFAULT_UMASK_LOCAL_ENDPOINTS 0000
+
+#define VSOMEIP_MAX_CLIENTS 255
+
namespace vsomeip {
struct configuration_data_t {
- std::mutex mutex_;
- unsigned short next_client_id_;
- unsigned short ref_;
+#ifdef WIN32
+ void* mutex_;
+#else
+ pthread_mutex_t mutex_;
+#endif
+ unsigned short client_base_;
+
+ unsigned short used_client_ids_[VSOMEIP_MAX_CLIENTS];
+ int max_used_client_ids_index_;
};
} // namespace vsomeip