1:
2:
3: /*************
4: * *
5: * SENTINEL *
6: * *
7: *************/
8:
9:
10: #ifndef WWWI_MIND_QUESTION_H
11: #define WWWI_MIND_QUESTION_H
12:
13:
14: /**********************
15: * *
16: * COMPILER INCLUDES *
17: * *
18: **********************/
19:
20:
21: /*********************
22: * *
23: * PROJECT INCLUDES *
24: * *
25: *********************/
26:
27:
28: #include "mind.h"
29: #include "labellist.h"
30:
31:
32: /*******************
33: * *
34: * CLASS QUESTION *
35: * *
36: *******************/
37:
38:
39: class Question {
40: public:
41: Question(const char *i_strName, RRType i_ty, RRClass i_cl);
42: Question(LabelListPtr &i_llprName, RRType i_ty, RRClass i_cl);
43: Question(const Question &ci_qnr, LabelListConstPtr ci_llpCName);
44: Question(const Question &ci_qnr);
45: inline LabelListConstPtr GetName(void) const;
46: inline RRClass GetClass(void) const;
47: inline RRType GetType(void) const;
48: ~Question(void);
49:
50: protected:
51: LabelListPtr m_llpName;
52: RRType m_ty;
53: RRClass m_cl;
54: };
55: DECL_POINTER_TYPES(Question)
56:
57:
58: /************************
59: * *
60: * FUNCTION PROTOTYPES *
61: * *
62: ************************/
63:
64:
65: ostream& operator<<(ostream& io_smr, QuestionConstPtr ci_qnp);
66: ostream& operator<<(ostream& io_smr, const Question &ci_qnr);
67:
68:
69: /*********************
70: * *
71: * INLINE FUNCTIONS *
72: * *
73: *********************/
74:
75:
76: #include "question.i"
77:
78:
79: /************
80: * *
81: * THE END *
82: * *
83: ************/
84:
85:
86: #endif
87:
88:
89: