LibMultiSense
LibMultiSense Documentation
SysNetworkMessage.hh
Go to the documentation of this file.
1 
37 #ifndef LibMultiSense_SysNetworkMessage
38 #define LibMultiSense_SysNetworkMessage
39 
40 #include "../utility/Portability.hh"
41 
42 namespace crl {
43 namespace multisense {
44 namespace details {
45 namespace wire {
46 
47 class SysNetwork {
48 public:
51 
52  //
53  // Configurable interfaces
54 
55  static CRL_CONSTEXPR uint8_t Interface_Unknown = 0;
56  static CRL_CONSTEXPR uint8_t Interface_Primary = 1; // external GigE
57  static CRL_CONSTEXPR uint8_t Interface_Secondary = 2; // internal 100Mb
58 
59  //
60  // IPV4 parameters
61 
62  uint8_t interface;
63  std::string address;
64  std::string gateway;
65  std::string netmask;
66 
67  //
68  // Constructors
69 
71  SysNetwork(const std::string& a,
72  const std::string& g,
73  const std::string& n) :
75  address(a),
76  gateway(g),
77  netmask(n) {};
80  address(),
81  gateway(),
82  netmask() {};
83 
84  //
85  // Serialization routine
86 
87  template<class Archive>
88  void serialize(Archive& message,
89  const VersionType version)
90  {
91  (void) version;
92  message & interface;
93  message & address;
94  message & gateway;
95  message & netmask;
96  }
97 };
98 
99 }}}} // namespaces
100 
101 #endif
crl::multisense::details::wire::SysNetwork::gateway
std::string gateway
Definition: SysNetworkMessage.hh:64
crl::multisense::details::wire::SysNetwork::serialize
void serialize(Archive &message, const VersionType version)
Definition: SysNetworkMessage.hh:88
crl::multisense::details::wire::SysNetwork::ID
static CRL_CONSTEXPR IdType ID
Definition: SysNetworkMessage.hh:49
crl::multisense::details::wire::ID_CMD_SYS_SET_NETWORK
static CRL_CONSTEXPR IdType ID_CMD_SYS_SET_NETWORK
Definition: Protocol.hh:170
CRL_CONSTEXPR
#define CRL_CONSTEXPR
Definition: Portability.hh:49
crl
Definition: BufferStream.hh:51
crl::multisense::details::wire::SysNetwork::Interface_Secondary
static CRL_CONSTEXPR uint8_t Interface_Secondary
Definition: SysNetworkMessage.hh:57
crl::multisense::details::wire::SysNetwork::SysNetwork
SysNetwork(utility::BufferStreamReader &r, VersionType v)
Definition: SysNetworkMessage.hh:70
crl::multisense::details::wire::SysNetwork::netmask
std::string netmask
Definition: SysNetworkMessage.hh:65
crl::multisense::details::wire::SysNetwork::SysNetwork
SysNetwork()
Definition: SysNetworkMessage.hh:78
crl::multisense::details::wire::VersionType
uint16_t VersionType
Definition: Protocol.hh:137
crl::multisense::details::wire::SysNetwork::SysNetwork
SysNetwork(const std::string &a, const std::string &g, const std::string &n)
Definition: SysNetworkMessage.hh:71
crl::multisense::details::wire::SysNetwork::address
std::string address
Definition: SysNetworkMessage.hh:63
crl::multisense::details::wire::SysNetwork::interface
uint8_t interface
Definition: SysNetworkMessage.hh:62
crl::multisense::details::utility::BufferStreamReader
Definition: BufferStream.hh:192
multisense
Definition: MultiSenseChannel.hh:44
crl::multisense::details::wire::SysNetwork
Definition: SysNetworkMessage.hh:47
crl::multisense::details::wire::SysNetwork::VERSION
static CRL_CONSTEXPR VersionType VERSION
Definition: SysNetworkMessage.hh:50
crl::multisense::details::wire::SysNetwork::Interface_Primary
static CRL_CONSTEXPR uint8_t Interface_Primary
Definition: SysNetworkMessage.hh:56
crl::multisense::details::wire::IdType
uint16_t IdType
Definition: Protocol.hh:136
crl::multisense::details::wire::SysNetwork::Interface_Unknown
static CRL_CONSTEXPR uint8_t Interface_Unknown
Definition: SysNetworkMessage.hh:55