60 lines
828 B
C++
60 lines
828 B
C++
#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
|