FreeCalypso > hg > fc-magnetite
comparison src/gpf2/inc/pco_view_templ.h @ 1:864b8cc0cf63
src/gpf2: preened GPF goo from TCS211
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 25 Sep 2016 23:38:58 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:945cf7f506b2 | 1:864b8cc0cf63 |
---|---|
1 /* | |
2 +----------------------------------------------------------------------------- | |
3 | Project : PCO2 | |
4 | Modul : PCO_VIEW_TEMPLATE | |
5 +----------------------------------------------------------------------------- | |
6 | Copyright 2002 Texas Instruments Berlin, AG | |
7 | All rights reserved. | |
8 | | |
9 | This file is confidential and a trade secret of Texas | |
10 | Instruments Berlin, AG | |
11 | The receipt of or possession of this file does not convey | |
12 | any rights to reproduce or disclose its contents or to | |
13 | manufacture, use, or sell anything it may describe, in | |
14 | whole, or in part, without the specific written consent of | |
15 | Texas Instruments Berlin, AG. | |
16 +----------------------------------------------------------------------------- | |
17 | Purpose : This Modul contains a template of a PCO viewer class | |
18 | with basic functions for several PCO control messages. | |
19 | It can either be used just to connect to a PCO server or | |
20 | can be specialized and extended like in PCOView_templ. | |
21 +----------------------------------------------------------------------------- | |
22 */ | |
23 | |
24 #ifndef _PCO_VIEW_TEMPL_H_ | |
25 #define _PCO_VIEW_TEMPL_H_ | |
26 | |
27 /*==== INCLUDES ===================================================*/ | |
28 #include "pco_const.h" | |
29 | |
30 /*==== DEFINES =====================================================*/ | |
31 | |
32 /*==== PROTOTYPES ==================================================*/ | |
33 | |
34 /*==== CLASSES =====================================================*/ | |
35 class PCOView_templ | |
36 { | |
37 public: | |
38 /* | |
39 +-------------------------------------------------------------------------------+ | |
40 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
41 | STATE : code ROUTINE : PCOView_templ::PCOView_templ | | |
42 +-------------------------------------------------------------------------------+ | |
43 | |
44 PURPOSE : initilizes viewer process | |
45 | |
46 PARAMS: primq .. name of primitive queue | |
47 ctrlq .. name of control queue | |
48 | |
49 RETURNS: | |
50 | |
51 */ | |
52 PCOView_templ(const char* primq_name="", const char* ctrlq_name=""); | |
53 virtual ~PCOView_templ(); | |
54 | |
55 /* | |
56 +-------------------------------------------------------------------------------+ | |
57 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
58 | STATE : code ROUTINE : PCOView_templ::connect | | |
59 +-------------------------------------------------------------------------------+ | |
60 | |
61 PURPOSE : tries to connect with server | |
62 | |
63 PARAMS: | |
64 | |
65 RETURNS: 0 .. sucess | |
66 -1 .. Server not found | |
67 -2 .. error while contacting Server | |
68 | |
69 */ | |
70 int connect(void); | |
71 | |
72 /* | |
73 +-------------------------------------------------------------------------------+ | |
74 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
75 | STATE : code ROUTINE : PCOView_templ::subscribe | | |
76 +-------------------------------------------------------------------------------+ | |
77 | |
78 PURPOSE : tries to subscribe for live data from server | |
79 | |
80 PARAMS: mobileId .. name of mobile to receive live data from (may be empty) | |
81 | |
82 RETURNS: 0 .. sucess | |
83 -1 .. Server not found | |
84 -2 .. error while contacting Server | |
85 | |
86 */ | |
87 int subscribe(const char* mobileId); | |
88 | |
89 /* | |
90 +-------------------------------------------------------------------------------+ | |
91 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
92 | STATE : code ROUTINE : PCOView_templ::send2srv | | |
93 +-------------------------------------------------------------------------------+ | |
94 | |
95 PURPOSE : tries to send a data buffer to the server | |
96 | |
97 PARAMS: buf ... pointer to buffer | |
98 size .. size of buffer | |
99 id ... message id | |
100 | |
101 RETURNS: 0 .. sucess | |
102 -1 .. Server not found | |
103 -2 .. error while contacting Server | |
104 | |
105 */ | |
106 int send2srv(void* buf, U16 size, U16 id); | |
107 | |
108 /* | |
109 +-------------------------------------------------------------------------------+ | |
110 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
111 | STATE : code ROUTINE : PCOView_templ::disconnect | | |
112 +-------------------------------------------------------------------------------+ | |
113 | |
114 PURPOSE : tries to disconnect from server | |
115 | |
116 PARAMS: | |
117 | |
118 RETURNS: 0 .. sucess | |
119 -1 .. Server not found | |
120 -2 .. error while contacting Server | |
121 | |
122 */ | |
123 int disconnect(void); | |
124 | |
125 /* | |
126 +-------------------------------------------------------------------------------+ | |
127 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
128 | STATE : code ROUTINE : PCOView_templ::unsubscribe | | |
129 +-------------------------------------------------------------------------------+ | |
130 | |
131 PURPOSE : tries to unsubscribe from livedata stream from server | |
132 | |
133 PARAMS: | |
134 | |
135 RETURNS: 0 .. sucess | |
136 -1 .. Server not found | |
137 -2 .. error while contacting Server | |
138 | |
139 */ | |
140 int unsubscribe(void); | |
141 | |
142 /* | |
143 +-------------------------------------------------------------------------------+ | |
144 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
145 | STATE : code ROUTINE : PCOView_templ::on_connected | | |
146 +-------------------------------------------------------------------------------+ | |
147 | |
148 PURPOSE : reaction to PCO_CONNECTED from server | |
149 | |
150 PARAMS: buf .. data containing server type | |
151 sender .. server queue name | |
152 | |
153 RETURNS: 0 .. server type supported | |
154 -1 .. server type not supported | |
155 | |
156 */ | |
157 virtual int on_connected(const void *buf,const char* sender); | |
158 | |
159 /* | |
160 +---------------------------------------------------------------------------------+ | |
161 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
162 | STATE : code ROUTINE : PCOView_templ::req_logfile_info | | |
163 +---------------------------------------------------------------------------------+ | |
164 | |
165 PURPOSE : contacts server to request info about a specified logfile | |
166 | |
167 PARAMS: fname .. name of logfile (can be full path) | |
168 | |
169 RETURNS: 0 .. sucess | |
170 -1 .. Server not found | |
171 -2 .. error while contacting Server | |
172 | |
173 */ | |
174 int req_logfile_info(const char* fname); | |
175 | |
176 /* | |
177 +-------------------------------------------------------------------------------+ | |
178 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
179 | STATE : code ROUTINE : PCOView_templ::get_logdata | | |
180 +-------------------------------------------------------------------------------+ | |
181 | |
182 PURPOSE : contacts server to request logged data | |
183 | |
184 PARAMS: begin, end .. index area requested | |
185 | |
186 RETURNS: 0 .. sucess | |
187 -1 .. Server not found | |
188 -2 .. error while contacting Server | |
189 | |
190 */ | |
191 int get_logdata(ULONG begin, ULONG end); | |
192 | |
193 /* | |
194 +-------------------------------------------------------------------------------+ | |
195 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
196 | STATE : code ROUTINE : PCOView_templ::open_logfile | | |
197 +-------------------------------------------------------------------------------+ | |
198 | |
199 PURPOSE : contacts server to request logged data from a specified logfile | |
200 | |
201 PARAMS: fname .. name of logfile (full path) | |
202 begin, end .. index area requested | |
203 | |
204 RETURNS: 0 .. sucess | |
205 -1 .. Server not found | |
206 -2 .. error while contacting Server | |
207 | |
208 */ | |
209 int open_logfile(const char* fname, ULONG begin=0, ULONG end=0); | |
210 | |
211 /* | |
212 +-------------------------------------------------------------------------------+ | |
213 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
214 | STATE : code ROUTINE : PCOView_templ::set_filter | | |
215 +-------------------------------------------------------------------------------+ | |
216 | |
217 PURPOSE : contacts server to change filter settings | |
218 | |
219 PARAMS: list .. '\0'-separated list of names of entitities | |
220 (terminated by "\0\0") | |
221 primitives/traces from entities in -list- | |
222 should not be forwarded | |
223 | |
224 prim_trace | |
225 .. parameter to disable/enable general forwarding of | |
226 primitives/traces: | |
227 0 .. fowarding of everything (default) | |
228 1 .. no primitives | |
229 2 .. no traces | |
230 positiv_list | |
231 .. if true, only primitives/traces from entities in -list- | |
232 will be forwarded | |
233 | |
234 RETURNS: 0 .. sucess | |
235 -1 .. Server not found | |
236 -2 .. error while contacting Server | |
237 | |
238 */ | |
239 int set_filter(const char* list, char prim_trace=0, bool positiv_list=false); | |
240 | |
241 /* | |
242 +-------------------------------------------------------------------------------+ | |
243 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
244 | STATE : code ROUTINE : PCOView_templ::self_send | | |
245 +-------------------------------------------------------------------------------+ | |
246 | |
247 PURPOSE : tries to send a data buffer to the control queue of this viewer | |
248 | |
249 PARAMS: buf ... pointer to buffer | |
250 size .. size of buffer | |
251 id ... message id | |
252 | |
253 RETURNS: 0 .. sucess | |
254 -1 .. receiver not found | |
255 -2 .. error while contacting receiver | |
256 | |
257 */ | |
258 int self_send(void* buf, U16 size, U16 id); | |
259 | |
260 const char *primq_name() { return m_primq_name;} | |
261 const char *ctrlq_name() { return m_ctrlq_name;} | |
262 | |
263 /* | |
264 +-------------------------------------------------------------------------------+ | |
265 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
266 | STATE : code ROUTINE : PCOView_templ::start_logfile | | |
267 +-------------------------------------------------------------------------------+ | |
268 | |
269 PURPOSE : contacts server to start logging data received in the given queue | |
270 into the given logfile | |
271 | |
272 PARAMS: logfile .. name of the logfile | |
273 (if no path is given the current server-path is used) | |
274 queue .. name of the queue the server shall receive data | |
275 (it will be created by the server) | |
276 (if no queue is given, m_ctrlq_name+"_LF" is used) | |
277 | |
278 RETURNS: 0 .. sucess | |
279 -1 .. receiver not found | |
280 -2 .. error while contacting receiver | |
281 */ | |
282 int start_logfile(const char* logfile, const char* queue=NULL); | |
283 | |
284 /* | |
285 +-------------------------------------------------------------------------------+ | |
286 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
287 | STATE : code ROUTINE : PCOView_templ::stop_logfile | | |
288 +-------------------------------------------------------------------------------+ | |
289 | |
290 PURPOSE : contacts server to stop logging data received in the given queue | |
291 | |
292 PARAMS: queue .. name of the queue the server received data | |
293 (if no queue is given, m_ctrlq_name+"_LF" is used) | |
294 | |
295 RETURNS: 0 .. sucess | |
296 -1 .. receiver not found | |
297 -2 .. error while contacting receiver | |
298 */ | |
299 int stop_logfile(const char* queue=NULL); | |
300 | |
301 /* | |
302 +-------------------------------------------------------------------------------+ | |
303 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
304 | STATE : code ROUTINE : PCOView_templ::send_raw_data | | |
305 +-------------------------------------------------------------------------------+ | |
306 | |
307 PURPOSE : sends raw data to the given queue | |
308 | |
309 PARAMS: rawdata .. the data | |
310 rawsize .. size of rawdata | |
311 queue .. name of the queue the data will be sent to | |
312 (if no queue is given, m_ctrlq_name+"_LF" is used) | |
313 | |
314 RETURNS: 0 .. sucess | |
315 -1 .. receiver not found | |
316 -2 .. error while contacting receiver | |
317 */ | |
318 int send_raw_data(const void* rawdata, U16 rawsize, const char* queue=NULL); | |
319 | |
320 /* | |
321 +-------------------------------------------------------------------------------+ | |
322 | PROJECT : PCO2 MODULE : PCO_VIEW_TEMPL | | |
323 | STATE : code ROUTINE : PCOView_templ::set_srv_name | | |
324 +-------------------------------------------------------------------------------+ | |
325 | |
326 PURPOSE : change the name of the server queue | |
327 | |
328 PARAMS: sname ... new name of server queue | |
329 | |
330 */ | |
331 void set_srv_name(const char* sname); | |
332 | |
333 U8 srv_type() const { return m_srv_type;} | |
334 | |
335 protected: | |
336 char m_primq_name[MAX_QNAME_LEN+1],m_ctrlq_name[MAX_QNAME_LEN+1]; | |
337 char m_srvq_name[MAX_QNAME_LEN+1]; | |
338 U8 m_srv_type; | |
339 }; | |
340 | |
341 #endif /* _PCO_VIEW_TEMPL_H_ */ |