ADTF_DEVICE_TOOLBOX  3.12.1 (ADTF 3.18.3)
someip_database_intf.h
Go to the documentation of this file.
1 
8 #pragma once
9 
10 #include <adtf_utils.h>
11 #include <adtf_ucom3.h>
12 #include "someip_types.h"
13 #include <adtfmediadescription/type_reflection.h>
14 
18 constexpr const char* CID_DEVTB_SOMEIP_PARSER = "someip_database_parser.service.devicetb.cid";
19 
23 constexpr const char* BUS_ID_SOMEIP = "SOME/IP";
24 
28 namespace adtf
29 {
30 
34 namespace devicetb
35 {
36 
40 namespace sdk
41 {
42 
46 namespace someip
47 {
51 namespace hood
52 {
53 
57 class ISomeIpDatabase : public adtf::ucom::ant::IObject
58 {
59 public:
61  ADTF_IID(ISomeIpDatabase, "someip_database.hood.someip.sdk.devicetb.adtf.iid");
62 
71  [[deprecated("Use signature from namespace key instead.")]]
73 
80  virtual tResult GetClusterInfos(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tClusterInfo* pClusterInfo) >& fnCallback) const = 0;
81 
88  virtual tResult GetEcus(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tECUInfo* pECUInfo) >& fnCallback) const = 0;
89 
97  virtual tResult GetChannelsByCluster(uint32_t nClusterId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tChannelInfo* pChannelInfo) >& fnCallback) const = 0;
98 
106  virtual tResult GetCluster(uint32_t nClusterId, const adtf::devicetb::sdk::someip::hood::tClusterInfo*& pClusterInfo) const = 0;
107 
115  virtual tResult GetEcu(uint32_t nEcuId, const adtf::devicetb::sdk::someip::hood::tECUInfo*& pECUInfo) const = 0;
116 
124  virtual tResult GetChannel(uint32_t nChannelId, const adtf::devicetb::sdk::someip::hood::tChannelInfo*& pChannelInfo) const = 0;
125 
133  virtual tResult GetSenderEcu(const tSomeIpSampleHeader& oSampleHeader, const adtf::devicetb::sdk::someip::hood::tECUInfo* pECUInfo) const = 0;
134 
142  virtual tResult GetMessageInfo(uint32_t nMessageInfoId, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo*& pMessageInfo) const = 0;
143 
151  virtual tResult GetConnectionsByEcu(uint32_t nEcuId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpConnectionInfo* pSocketInfo) >& fnCallback) const = 0;
152 
160  virtual tResult GetConnectionsByChannel(uint32_t nChannelId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpConnectionInfo* pSocketInfo) >& fnCallback) const = 0;
161 
168  virtual tResult GetMessageInfos(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo* pMessageInfo) >& fnCallback) const = 0;
169 
177 };
178 
179 } // namespace hood
180 
184 namespace key
185 {
190  {
191  public:
193  ADTF_IID(ISomeIpDatabase, "someip_database.key.someip.sdk.devicetb.adtf.iid");
194 
195  // 2 Parameter signature of GetMessageInfo is still valid.
197 
208  virtual tResult GetMessageInfo(
211  const void *pMessageData,
212  size_t nMessageDataSize,
214  ) const = 0;
215  };
216 }
217 
220 
221 
222 } // namespace someip
223 } // namespace sdk
224 } // namespace devicetb
225 } // namespace adtf
The ISomeIpDatabase interface provides access to SOME/IP specific information contained in a database...
virtual tResult GetChannelsByCluster(uint32_t nClusterId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tChannelInfo *pChannelInfo) > &fnCallback) const =0
Returns all Channel Infos from a cluster.
virtual tResult GetEcus(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tECUInfo *pECUInfo) > &fnCallback) const =0
Returns all Ecu Infos from a cluster.
virtual bool ConnectionContainsSomeIp(const adtf::devicetb::sdk::someip::hood::tSomeIpSampleHeader &oEthernetHeader) const =0
Check if a given ethernet sample is on a connection handled by this database.
ADTF_IID(ISomeIpDatabase, "someip_database.hood.someip.sdk.devicetb.adtf.iid")
Interface ID for the SOME/IP database interface.
virtual tResult GetMessageInfos(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo *pMessageInfo) > &fnCallback) const =0
Getter for all SOME/IP messages.
virtual tResult GetClusterInfos(const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tClusterInfo *pClusterInfo) > &fnCallback) const =0
Returns all Cluster Infos.
virtual tResult GetConnectionsByEcu(uint32_t nEcuId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpConnectionInfo *pSocketInfo) > &fnCallback) const =0
Getter for the sockets connected with an ecu.
virtual tResult GetEcu(uint32_t nEcuId, const adtf::devicetb::sdk::someip::hood::tECUInfo *&pECUInfo) const =0
Getter for a tEcuInfo with a given Id.
virtual tResult GetConnectionsByChannel(uint32_t nChannelId, const ucom::nitro::ifunction< void(const adtf::devicetb::sdk::someip::hood::tSomeIpConnectionInfo *pSocketInfo) > &fnCallback) const =0
Getter for the sockets connected with a channel.
virtual tResult GetMessageInfo(const adtf::devicetb::sdk::someip::hood::tSomeIpSampleHeader &oSampleHeader, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageHeader &oMessageHeader, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo *&pMessageInfo) const =0
Returns the SOME/IP Message Info for a given SOME/IP message sample and message header.
virtual tResult GetCluster(uint32_t nClusterId, const adtf::devicetb::sdk::someip::hood::tClusterInfo *&pClusterInfo) const =0
Getter for a tClusterInfo with a given Id.
virtual tResult GetSenderEcu(const tSomeIpSampleHeader &oSampleHeader, const adtf::devicetb::sdk::someip::hood::tECUInfo *pECUInfo) const =0
Getter for the sender ECU.
virtual tResult GetChannel(uint32_t nChannelId, const adtf::devicetb::sdk::someip::hood::tChannelInfo *&pChannelInfo) const =0
Getter for a tChannelInfo with a given Id.
virtual tResult GetMessageInfo(uint32_t nMessageInfoId, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo *&pMessageInfo) const =0
Getter for a tSomeIpMessageInfo with a given Id.
The ISomeIpDatabase interface provides access to SOME/IP specific information contained in a database...
virtual tResult GetMessageInfo(const adtf::devicetb::sdk::someip::hood::tSomeIpSampleHeader &oSampleHeader, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageHeader &oMessageHeader, const void *pMessageData, size_t nMessageDataSize, const adtf::devicetb::sdk::someip::hood::tSomeIpMessageInfo *&pMessageInfo) const =0
Returns the SOME/IP Message Info for a given SOME/IP message sample and message header.
ADTF_IID(ISomeIpDatabase, "someip_database.key.someip.sdk.devicetb.adtf.iid")
Interface ID for the SOME/IP database interface.
key::ISomeIpDatabase ISomeIpDatabase
The ISomeIpDatabase interface provides access to SOME/IP specific information contained in a database...
ADTF - Namespace.
constexpr const char * CID_DEVTB_SOMEIP_PARSER
Database Parser ID.
constexpr const char * BUS_ID_SOMEIP
The identifier to be used in IBusDbLoader's "bustype" property.
Copyright 2024 CARIAD SE.
This struct contains the data of one ethernet channel.
Definition: someip_types.h:613
This struct contains the data of one cluster.
Definition: someip_types.h:626
This struct contains the data of one ecu.
Definition: someip_types.h:562
This struct describes the SOME/IP connection info.
Definition: someip_types.h:595
This struct represents the payload header of one SOME/IP (alike) message as defined by the SOME/IP sp...
Definition: someip_types.h:176
This struct describes the actual payload which is encapsulated in either ethernet frame or result of ...
Definition: someip_types.h:534
This struct describes the SOME/IP sample header which is placed in the beginning of every SOME/IP sam...
Definition: someip_types.h:201