This commit is contained in:
Timur A. Fatkhullin 2024-05-29 18:03:32 +03:00
parent 9e13bf0d74
commit 4edd3ee21f
2 changed files with 60 additions and 0 deletions

View File

@ -25,6 +25,7 @@ set(ADC_DEVICE_HEADERS
set(ADC_NETWORK_HEADERS
net/adc_netmessage.h
net/adc_netproto.h
net/adc_netservice.h
)
option(BUILD_TESTS "Build tests" ON)

59
net/adc_netservice.h Normal file
View File

@ -0,0 +1,59 @@
#pragma once
/*
ABSTRACT DEVICE COMPONENTS LIBRARY
*/
namespace adc
{
template <typename NetMessageT, typename IOImplT>
class AdcNetService : public IOImplT
{
public:
/* asynchronuos operations */
// open connection
template <typename... ArgTs>
auto asyncConnect(ArgTs&&... args)
{
}
template <typename... ArgTs>
auto asyncSend(NetMessageT&& msg, ArgTs&&... args)
{
}
template <typename... ArgTs>
auto asyncReceive(ArgTs&&... args)
{
}
/* blocking operations */
template <typename... ArgTs>
auto send(NetMessageT&& msg, ArgTs&&... args)
{
}
template <typename... ArgTs>
NetMessageT receive(ArgTs&&... args)
{
}
template <typename... ArgTs>
auto close(ArgTs&&... args)
{
}
};
} // namespace adc