Dibbler - a portable DHCPv6  1.0.2RC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ClntCfgIA.h
Go to the documentation of this file.
1 /*
2  * Dibbler - a portable DHCPv6
3  *
4  * authors: Tomasz Mrugalski <thomson@klub.com.pl>
5  * Marek Senderski <msend@o2.pl>
6  *
7  * released under GNU GPL v2 only licence
8  *
9  */
10 
11 class TClntCfgIA;
12 #ifndef CLNTCFGIA_H
13 #define CLNTCFGIA_H
14 
15 #include "ClntCfgAddr.h"
16 #include "ClntParsGlobalOpt.h"
17 #include "DHCPConst.h"
18 #include <iostream>
19 #include <iomanip>
20 
22 {
23  friend std::ostream& operator<<(std::ostream& out, TClntCfgIA& group);
24  public:
25  long getIAID();
26  void setIAID(long iaid);
27 
28  unsigned long getT1();
29  unsigned long getT2();
30 
32 
33  void firstAddr();
35  long countAddr();
36  void addAddr(SPtr<TClntCfgAddr> addr);
37 
38  TClntCfgIA();
39  TClntCfgIA(SPtr<TClntCfgIA> right, long iAID);
40 
41  void reset();
42  void setState(enum EState state);
43  enum EState getState();
44  bool getAddrParams();
45 
46  private:
47  unsigned long IAID;
48  unsigned long T1;
49  unsigned long T2;
51  TContainer< SPtr<TClntCfgAddr> > ClntCfgAddrLst;
52  static long newID();
53 
54  bool AddrParams;
55 };
56 
57 #endif
58 
59