Woman, Life, Freedom


Adaptive AUTOSAR
ARA public interface header documentation
doip_server.h
1#ifndef DOIP_SERVER_H
2#define DOIP_SERVER_H
3
4#include <asyncbsdsocket/poller.h>
5#include <asyncbsdsocket/tcp_listener.h>
6#include <doiplib/doip_controller.h>
7#include "../../ara/com/helper/concurrent_queue.h"
8#include "./vehicle_id_request_handler.h"
9#include "./diag_message_handler.h"
10
11namespace application
12{
13 namespace doip
14 {
17 {
18 public:
20 static constexpr size_t cDoipPacketSize{64};
21
22 private:
23 AsyncBsdSocketLib::Poller *const mPoller;
24 VehicleIdRequestHandler mVehicleIdRequestHandler;
25 DiagMessageHandler mDiagMessageHandler;
26 AsyncBsdSocketLib::TcpListener mListener;
27 DoipLib::DoipController mController;
29
30 void onAccept();
31 void onReceive();
32 void onSend();
33
34 public:
48 AsyncBsdSocketLib::Poller *poller,
50 std::string resourcesUrl,
51 std::string ipAddress,
52 uint16_t port,
53 DoipLib::ControllerConfig &&config,
54 std::string &&vin,
55 uint16_t logicalAddress,
56 uint64_t eid,
57 uint64_t gid);
58
60 };
61 }
62}
63
64#endif
A class to handle UDS messages via DoIP.
Definition: diag_message_handler.h:16
Class to handle DoIP requests.
Definition: doip_server.h:17
DoipServer(AsyncBsdSocketLib::Poller *poller, helper::CurlWrapper *curl, std::string resourcesUrl, std::string ipAddress, uint16_t port, DoipLib::ControllerConfig &&config, std::string &&vin, uint16_t logicalAddress, uint64_t eid, uint64_t gid)
Constructor.
Definition: doip_server.cpp:11
static constexpr size_t cDoipPacketSize
Maximum DoIP packet size.
Definition: doip_server.h:20
A class to handle vehicle ID requests via DoIP.
Definition: vehicle_id_request_handler.h:14
Minimalist C++ wrapper of easy (blocking interface) CURL library for RESTful communication.
Definition: curl_wrapper.h:13
Thread-safe wrapper around STL queue using locking mechanism.
Definition: concurrent_queue.h:18
AUTOSAR application namespace.
Definition: diag_message_handler.cpp:5