24{
25 const std::string OutputStream::optType = "EventLoop_OutputStreamType";
26 const std::string OutputStream::optMergeCmd = "EventLoop_MergeCmd";
27 const std::string OutputStream::optContainerSuffix = "EventLoop_DSSuffix";
28
29 void OutputStream ::
30 testInvariant () const
31 {
34 }
35
36
37
38 OutputStream ::
39 OutputStream ()
40 : m_label ("out"), m_output (0)
41 {
43 }
44
45
46
47 OutputStream ::
48 OutputStream (const std::string& val_label)
49 : m_label (val_label), m_output (0)
50 {
52
54 }
55
56
57
58 OutputStream ::
59 OutputStream (const std::string& val_label, const std::string& val_type)
60 : m_label (val_label), m_output (0)
61 {
63
64 m_options.setString(optType, val_type);
65
67 }
68
69
70
71 OutputStream ::
72 OutputStream (const OutputStream& that)
73 : TObject (that), m_label (that.m_label),
74 m_options (that.m_options), m_output (0)
75 {
77
78 if (that.m_output != 0)
79 {
82 }
83 }
84
85
86
87 OutputStream ::
88 ~OutputStream ()
89 {
91
92 delete m_output;
93 }
94
95
96
97 OutputStream& OutputStream ::
98 operator = (OutputStream that)
99 {
100
101 that.swap (*this);
102 return *this;
103 }
104
105
106
107 void OutputStream ::
108 swap (OutputStream& that)
109 {
112
113 m_label.swap (that.m_label);
114 m_options.swap (that.m_options);
115
117 m_output = that.m_output;
118 that.m_output = tmp_output;
119 }
120
121
122
123 const std::string& OutputStream ::
124 label () const
125 {
127 return m_label;
128 }
129
130
131
132 void OutputStream ::
133 label (const std::string& val_label)
134 {
137 m_label = val_label;
138 }
139
140
141
143 options ()
144 {
146 return &m_options;
147 }
148
149
150
152 options () const
153 {
155 return &m_options;
156 }
157
158
159
161 output() const
162 {
164 return m_output;
165 }
166
167
168
169 void OutputStream ::
171 {
173 delete m_output;
174 m_output = output_swallow;
175 }
176}
#define RCU_DESTROY_INVARIANT(x)
#define RCU_CHANGE_INVARIANT(x)
#define RCU_NEW_INVARIANT(x)
#define RCU_REQUIRE_SOFT(x)
#define RCU_READ_INVARIANT(x)
a class/interface representing an output location for files