ITS
ParameterNetwork.h
Go to the documentation of this file.
1 
6 #ifndef ParameterNetwork_H
7 #define ParameterNetwork_H
8 
9 #include <QObject>
10 
11 #include <netinet/in.h>
12 #include <sys/socket.h>
13 #include <arpa/inet.h>
14 #include <net/if.h>
15 #include <netinet/ip.h>
16 #include <netinet/udp.h>
17 #include <netinet/ether.h>
18 #include <linux/if_packet.h>
19 
20 #define BUF_SIZ 65535
21 
22 #include <api.h>
23 
24 #include <QHash>
25 
26 class ParameterNetwork : public QObject
27 {
28 public:
37 
38  int rawSocket;
39  struct ifreq if_idx;
40  struct sockaddr_ll socket_address;
42  struct ether_header eh;
43  char ifName[IFNAMSIZ];
51  quint16 internalBTPPort(quint16 port, quint16 portInfo)
52  {
53  if(m_internalBTPPort.contains((port << 16) + portInfo))
54  return m_internalBTPPort[(port << 16) + portInfo];
55  return 0;
56  }
62  quint16 internalBTPPort(quint32 concatenate)
63  {
64  if(m_internalBTPPort.contains(concatenate))
65  return m_internalBTPPort[concatenate];
66  return 0;
67  }
73  quint16 internalPort(QString service)
74  {
75  if(m_internalPort.contains(service))
76  return m_internalPort[service];
77  return 0;
78  }
79 
86  void addBTPPort(quint16 port, quint16 portInfo, quint16 internal){m_internalBTPPort[(port << 16) + portInfo] = internal;}
92  void addBTPPort(quint32 concatenate, quint16 internal){m_internalBTPPort[concatenate] = internal;}
98  void addPort(QString service, quint16 port){m_internalPort[service] = port;}
99 
103  void read();
107  void readDebug();
108 
113  quint16 camDestinationPort() const{return m_camDestinationPort;}
119 
130 
131 private:
132  QHash<quint32, quint16> m_internalBTPPort;
133  QHash<QString, quint16> m_internalPort;
140 };
141 
142 #endif // _ParameterNetwork_H_
void addBTPPort(quint32 concatenate, quint16 internal)
addBTPPort Add BTP port to the internal BTP ports from entire BTP port number.
Usefull functions and declarations.
struct ether_header eh
ParameterNetwork()
ParameterNetwork ParameterNetwork constructor.
quint16 camDestinationPortInfo() const
camDestinationPortInfo CAM destination port info getter.
char sendbuf[BUF_SIZ]
void readDebug()
readDebug Configuration printing.
~ParameterNetwork()
~ParameterNetwork ParameterNetwork destructor.
quint16 internalBTPPort(quint32 concatenate)
internalBTPPort Get the internal BTP port from entire BTP port number.
quint16 m_camDestinationPortInfo
char ifName[IFNAMSIZ]
void addBTPPort(quint16 port, quint16 portInfo, quint16 internal)
addBTPPort Add BTP port to the internal BTP ports.
quint16 m_camDestinationPort
quint16 m_denmDestinationPort
quint16 internalPort(QString service)
internalPort Get the internal BTP port from service name.
struct ifreq if_idx
void addPort(QString service, quint16 port)
addPort Add BTP port to the internal BTP ports from service name.
quint16 internalBTPPort(quint16 port, quint16 portInfo)
internalBTPPort Get the internal BTP port.
QHash< quint32, quint16 > m_internalBTPPort
QHash< QString, quint16 > m_internalPort
void read()
read Configuration file reading.
struct sockaddr_ll socket_address
quint16 denmDestinationPortInfo() const
denmDestinationPortInfo DENM destination port info getter.
quint16 camDestinationPort() const
camDestinationPort CAM destination port getter.
quint16 denmDestinationPort() const
denmDestinationPort DENM destination port getter.
quint16 m_denmDestinationPortInfo
#define BUF_SIZ