COVISE Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
covise_msg.h
Go to the documentation of this file.
1 /* This file is part of COVISE.
2 
3  You can use it under the terms of the GNU Lesser General Public License
4  version 2.1 or later, see lgpl-2.1.txt.
5 
6  * License: LGPL 2+ */
7 
8 #ifndef COVISE_MESSAGE_H
9 #define COVISE_MESSAGE_H
10 
11 #include <string.h>
12 #include <stdio.h>
13 #include <iostream>
14 
15 #include <util/coExport.h>
16 #include <util/byteswap.h>
17 
18 #include <net/message.h>
19 #include <net/message_types.h>
20 
21 #include <shm/covise_shm.h>
22 
23 #ifdef _WIN64
24 #define __WORDSIZE 64
25 #endif
26 
27 /*
28  $Log: $
29  * Revision 1.4 1994/03/23 18:07:03 zrf30125
30  * Modifications for multiple Shared Memory segments have been finished
31  * (not yet for Cray)
32  *
33  * Revision 1.3 93/10/11 09:22:19 zrhk0125
34  * new types DM_CONTACT_DM and APP_CONTACT_DM included
35  *
36  * Revision 1.2 93/10/08 19:18:06 zrhk0125
37  * data type sizes introduced
38 * some fixed type sizes with sizeof calls replaced
39  *
40  * Revision 1.1 93/09/25 20:47:03 zrhk0125
41  * Initial revision
42  *
43  */
44 
45 /***********************************************************************\
46  ** **
47  ** Message classes Version: 1.1 **
48  ** **
49  ** **
50  ** Description : The basic message structure as well as ways to **
51  ** initialize messages easily are provided. **
52  ** Subclasses for special types of messages **
53  ** can be introduced. **
54  ** **
55  ** Classes : Message, ShmMessage **
56  ** **
57  ** Copyright (C) 1993 by University of Stuttgart **
58  ** Computer Center (RUS) **
59  ** Allmandring 30 **
60  ** 7000 Stuttgart 80 **
61  ** HOSTID **
62  ** **
63  ** Author : A. Wierse (RUS) **
64  ** **
65  ** History : **
66  ** 15.04.93 Ver 1.0 **
67  ** 15.04.93 Ver 1.1 new Messages and type added **
68  ** sender and send_type added **
69  ** **
70  ** **
71 \***********************************************************************/
72 
73 namespace covise
74 {
75 
76 class DataManagerProcess;
77 class coShmPtr;
78 
80 {
83 };
84 
85 typedef long data_type;
86 
87 class COVISEEXPORT ShmMessage : public Message // message especially for memory allocation
88 {
89 public: // at the datamanager
90  ShmMessage(coShmPtr *ptr);
91  // constructor with encoding into data field:
93  : Message()
94  {
95  conn = NULL;
97  length = sizeof(data_type) + sizeof(long);
98  data = new char[length];
99  *(data_type *)data = d;
100  *(long *)(&data[sizeof(data_type)]) = count;
101  };
102  ShmMessage(data_type *d, long *count, int no);
103  ShmMessage(char *n, int t, data_type *d, long *count, int no);
105  : Message(){};
106  // ~ShmMessage() {
107  // delete [] data;
108  // data = NULL;
109  // }; // destructor
110  int process_new_object_list(DataManagerProcess *dmgr);
111  int process_list(DataManagerProcess *dmgr);
112  data_type get_data_type() // data type of msg
113  {
114  return *(data_type *)data;
115  };
116  long get_count() // length of msg
117  {
118  return *(long *)(data + sizeof(data_type));
119  };
121  {
123  return *(int *)(data);
124  else
125  return -1;
126  };
128  {
130  return *(int *)(data + sizeof(data_type));
131  else
132  return -1;
133  };
134 };
135 
137 {
138  friend class CtlMessage;
139  char *name;
140  int type;
141  int no;
142 
143 public:
144  Param(const char *na, int t, int n)
145  {
146  name = new char[strlen(na) + 1];
147  strcpy(name, na);
148  type = t;
149  no = n;
150  }
151  char *getName() const
152  {
153  return name;
154  }
156  {
157  return no;
158  }
159  int get_type()
160  {
161  return type;
162  }
163  virtual ~Param()
164  {
165  delete[] name;
166  }
167 };
168 
170 {
171  friend class CtlMessage;
172  char *list;
173 
174 public:
175  ParamFloatScalar(const char *na, char *l)
176  : Param(na, FLOAT_SCALAR, 1)
177  {
178  list = new char[strlen(l) + 1];
179  strcpy(list, l);
180  }
181  ParamFloatScalar(const char *na, float val)
182  : Param(na, FLOAT_SCALAR, 1)
183  {
184  char *buf = new char[255];
185  sprintf(buf, "%f", val);
186  list = new char[strlen(buf) + 1];
187  strcpy(list, buf);
188  delete[] buf;
189  }
191  {
192  delete[] list;
193  }
194 };
195 
197 {
198  friend class CtlMessage;
199  char *list;
200 
201 public:
202  ParamIntScalar(const char *na, char *l)
203  : Param(na, INT_SCALAR, 1)
204  {
205  list = new char[strlen(l) + 1];
206  strcpy(list, l);
207  }
208  ParamIntScalar(const char *na, long val)
209  : Param(na, INT_SCALAR, 1)
210  {
211  char *buf = new char[255];
212  sprintf(buf, "%ld", val);
213  list = new char[strlen(buf) + 1];
214  strcpy(list, buf);
215  delete[] buf;
216  }
218  {
219  delete[] list;
220  }
221 };
222 
224 {
225  friend class CtlMessage;
226  char **list;
227 
228 public:
229  ParamFloatVector(const char *na, int num, char **l)
230  : Param(na, FLOAT_VECTOR, num)
231  {
232  list = new char *[num];
233  for (int j = 0; j < num; j++)
234  {
235  list[j] = new char[strlen(l[j]) + 1];
236  strcpy(list[j], l[j]);
237  }
238  }
239  ParamFloatVector(const char *na, int num, float *l)
240  : Param(na, FLOAT_VECTOR, num)
241  {
242  char *buf = new char[255];
243  list = new char *[num];
244  for (int j = 0; j < num; j++)
245  {
246  sprintf(buf, "%f", *(l + j));
247  list[j] = new char[strlen(buf) + 1];
248  strcpy(list[j], buf);
249  }
250  delete[] buf;
251  }
253  {
254  for (int j = 0; j < no_of_items(); j++)
255  {
256  delete[] list[j];
257  }
258  delete[] list;
259  }
260 };
261 
263 {
264  friend class CtlMessage;
265  char **list;
266 
267 public:
268  ParamIntVector(const char *na, int num, char **l)
269  : Param(na, INT_VECTOR, num)
270  {
271  list = new char *[num];
272  for (int j = 0; j < num; j++)
273  {
274  list[j] = new char[strlen(l[j]) + 1];
275  strcpy(list[j], l[j]);
276  }
277  }
278  ParamIntVector(const char *na, int num, long *l)
279  : Param(na, INT_VECTOR, num)
280  {
281  char *buf = new char[255];
282  list = new char *[num];
283  for (int j = 0; j < num; j++)
284  {
285  sprintf(buf, "%ld", *(l + j));
286  list[j] = new char[strlen(buf) + 1];
287  strcpy(list[j], buf);
288  }
289  delete[] buf;
290  }
292  {
293  for (int j = 0; j < no_of_items(); j++)
294  {
295  delete[] list[j];
296  }
297  delete[] list;
298  }
299 };
300 
302 {
303  friend class CtlMessage;
304  char *list;
305 
306 public:
307  ParamBrowser(const char *na, char *l)
308  : Param(na, BROWSER, 1)
309  {
310  list = new char[strlen(l) + 1];
311  strcpy(list, l);
312  }
313  /*ParamBrowser(const char *na, char *file, char *wildcard) : Param(na, BROWSER, 2)
314  {
315  list = new char *[2];
316  list[0] = new char[ strlen(file)+1];
317  strcpy(list[0],file);
318  list[1] = new char[ strlen(wildcard)+1];
319  strcpy(list[1],wildcard);
320  }*/
322  {
323  delete[] list;
324  }
325 };
326 
328 {
329  friend class CtlMessage;
330  char *list;
331 
332 public:
333  ParamString(const char *na, char *l)
334  : Param(na, STRING, 1)
335  {
336  list = new char[strlen(l) + 1];
337  strcpy(list, l);
338  }
339  char *get_length()
340  {
341  return (char *)strlen(list);
342  };
344  {
345  delete[] list;
346  }
347 };
348 
350 {
351  friend class CtlMessage;
352  char **list;
353  int line_num;
354  int length;
355 
356 public:
357  ParamText(const char *na, char **l, int lineno, int len)
358  : Param(na, TEXT, lineno)
359  {
360  for (int j = 0; j < lineno; j++)
361  {
362  list[j] = new char[strlen(l[j]) + 1];
363  strcpy(list[j], l[j]);
364  }
365  line_num = lineno;
366  length = len;
367  }
369  {
370  return line_num;
371  };
373  {
374  return length;
375  };
377  {
378  for (int j = 0; j < no_of_items(); j++)
379  {
380  delete[] list[j];
381  }
382  delete[] list;
383  }
384 };
385 
387 {
388  friend class CtlMessage;
389  char *list;
390 
391 public:
392  ParamBoolean(const char *na, char *l)
393  : Param(na, COVISE_BOOLEAN, 1)
394  {
395  list = new char[strlen(l) + 1];
396  strcpy(list, l);
397  }
398  ParamBoolean(const char *na, int val)
399  : Param(na, COVISE_BOOLEAN, 1)
400  {
401  if (val == 0)
402  {
403  list = new char[strlen("FALSE") + 1];
404  strcpy(list, "FALSE");
405  }
406  else
407  {
408  list = new char[strlen("TRUE") + 1];
409  strcpy(list, "TRUE");
410  }
411  }
413  {
414  delete[] list;
415  }
416 };
417 
419 {
420  friend class CtlMessage;
421  char **list;
422 
423 public:
424  ParamFloatSlider(const char *na, int num, char **l)
425  : Param(na, FLOAT_SLIDER, num)
426  {
427  list = new char *[num];
428  for (int j = 0; j < num; j++)
429  {
430  list[j] = new char[strlen(l[j]) + 1];
431  strcpy(list[j], l[j]);
432  }
433  }
434  ParamFloatSlider(const char *na, float min, float max, float val)
435  : Param(na, FLOAT_SLIDER, 3)
436  {
437  char *buf = new char[255];
438  list = new char *[3];
439  sprintf(buf, "%f", min);
440  list[0] = new char[strlen(buf) + 1];
441  strcpy(list[0], buf);
442  sprintf(buf, "%f", max);
443  list[1] = new char[strlen(buf) + 1];
444  strcpy(list[1], buf);
445  sprintf(buf, "%f", val);
446  list[2] = new char[strlen(buf) + 1];
447  strcpy(list[2], buf);
448  delete[] buf;
449  }
451  {
452  for (int j = 0; j < no_of_items(); j++)
453  delete[] list[j];
454  delete[] list;
455  }
456 };
457 
459 {
460  friend class CtlMessage;
461  char **list;
462 
463 public:
464  ParamIntSlider(const char *na, int num, char **l)
465  : Param(na, INT_SLIDER, num)
466  {
467  list = new char *[num];
468  for (int j = 0; j < num; j++)
469  {
470  list[j] = new char[strlen(l[j]) + 1];
471  strcpy(list[j], l[j]);
472  }
473  }
474  ParamIntSlider(const char *na, long min, long max, long val)
475  : Param(na, INT_SLIDER, 3)
476  {
477  char *buf = new char[255];
478  list = new char *[3];
479  sprintf(buf, "%ld", min);
480  list[0] = new char[strlen(buf) + 1];
481  strcpy(list[0], buf);
482  sprintf(buf, "%ld", max);
483  list[1] = new char[strlen(buf) + 1];
484  strcpy(list[1], buf);
485  sprintf(buf, "%ld", val);
486  list[2] = new char[strlen(buf) + 1];
487  strcpy(list[2], buf);
488  delete[] buf;
489  }
491  {
492  for (int j = 0; j < no_of_items(); j++)
493  delete[] list[j];
494  delete[] list;
495  }
496 };
497 
499 {
500  friend class CtlMessage;
501  char **list;
502 
503 public:
504  ParamTimer(const char *na, int num, char **l)
505  : Param(na, TIMER, num)
506  {
507  list = new char *[num];
508  for (int j = 0; j < num; j++)
509  {
510  list[j] = new char[strlen(l[j]) + 1];
511  strcpy(list[j], l[j]);
512  }
513  }
514  ParamTimer(const char *na, long start, long delta, long state)
515  : Param(na, TIMER, 3)
516  {
517  char *buf = new char[255];
518  list = new char *[3];
519  sprintf(buf, "%ld", start);
520  list[0] = new char[strlen(buf) + 1];
521  strcpy(list[0], buf);
522  sprintf(buf, "%ld", delta);
523  list[1] = new char[strlen(buf) + 1];
524  strcpy(list[1], buf);
525  sprintf(buf, "%ld", state);
526  list[2] = new char[strlen(buf) + 1];
527  strcpy(list[2], buf);
528  delete[] buf;
529  }
531  {
532  for (int j = 0; j < no_of_items(); j++)
533  delete[] list[j];
534  delete[] list;
535  }
536 };
537 
539 {
540  friend class CtlMessage;
541  char **list;
542 
543 public:
544  ParamPasswd(const char *na, int num, char **l)
545  : Param(na, PASSWD, num)
546  {
547  list = new char *[num];
548  for (int j = 0; j < num; j++)
549  {
550  list[j] = new char[strlen(l[j]) + 1];
551  strcpy(list[j], l[j]);
552  }
553  }
554  ParamPasswd(const char *na, char *host, char *user, char *passwd)
555  : Param(na, PASSWD, 3)
556  {
557  list = new char *[3];
558  list[0] = new char[strlen(host) + 1];
559  strcpy(list[0], host);
560  list[1] = new char[strlen(user) + 1];
561  strcpy(list[1], user);
562  list[2] = new char[strlen(passwd) + 1];
563  strcpy(list[2], passwd);
564  }
566  {
567  for (int j = 0; j < no_of_items(); j++)
568  delete[] list[j];
569  delete[] list;
570  }
571 };
572 
574 {
575  friend class CtlMessage;
576  char **list;
577  int sel;
578 
579 public:
580  ParamChoice(const char *na, int num, int s, char **l)
581  : Param(na, CHOICE, num)
582  {
583  sel = s;
584  list = new char *[num];
585  for (int j = 0; j < num; j++)
586  {
587  list[j] = new char[strlen(l[j]) + 1];
588  strcpy(list[j], l[j]);
589  }
590  }
591  ParamChoice(const char *na, int num, char **l, int s)
592  : Param(na, CHOICE, num)
593  {
594  sel = s;
595  list = new char *[num];
596  for (int j = 0; j < num; j++)
597  {
598  list[j] = new char[strlen(l[j]) + 1];
599  strcpy(list[j], l[j]);
600  }
601  }
603  {
604  for (int j = 0; j < no_of_items(); j++)
605  {
606  delete[] list[j];
607  }
608  delete[] list;
609  }
610 };
611 
613 {
614  friend class CtlMessage;
615  char **list;
616  int sel;
617 
618 public:
619  ParamColormapChoice(const char *na, int num, int s, char **l)
620  : Param(na, COLORMAPCHOICE_MSG, num)
621  {
622  sel = s;
623  list = new char *[num];
624  for (int j = 0; j < num; j++)
625  {
626  list[j] = new char[strlen(l[j]) + 1];
627  strcpy(list[j], l[j]);
628  }
629  }
630  ParamColormapChoice(const char *na, int num, char **l, int s)
631  : Param(na, COLORMAPCHOICE_MSG, num)
632  {
633  sel = s;
634  list = new char *[num];
635  for (int j = 0; j < num; j++)
636  {
637  list[j] = new char[strlen(l[j]) + 1];
638  strcpy(list[j], l[j]);
639  }
640  }
642  {
643  for (int j = 0; j < no_of_items(); j++)
644  {
645  delete[] list[j];
646  }
647  delete[] list;
648  }
649 };
650 
652 {
653  friend class CtlMessage;
654  char *list;
655 
656 public:
657  ParamMaterial(const char *na, char *l)
658  : Param(na, MATERIAL_MSG, 1)
659  {
660  list = new char[strlen(l) + 1];
661  strcpy(list, l);
662  }
663  char *get_length()
664  {
665  return (char *)strlen(list);
666  };
667 
669  {
670  delete[] list;
671  }
672 };
673 
675 {
676  friend class CtlMessage;
677  char **list;
678 
679 public:
680  ParamColormap(const char *na, int num, char **l)
681  : Param(na, COLORMAP_MSG, num)
682  {
683  list = new char *[num];
684  for (int j = 0; j < num; j++)
685  {
686  list[j] = new char[strlen(l[j]) + 1];
687  strcpy(list[j], l[j]);
688  }
689  }
690 
692  {
693  for (int j = 0; j < no_of_items(); j++)
694  delete[] list[j];
695  delete[] list;
696  }
697 };
698 
700 {
701  friend class CtlMessage;
702  char **list;
703 
704 public:
705  ParamColor(const char *na, int num, char **l)
706  : Param(na, COLOR_MSG, num)
707  {
708  list = new char *[num];
709  for (int j = 0; j < num; j++)
710  {
711  list[j] = new char[strlen(l[j]) + 1];
712  strcpy(list[j], l[j]);
713  }
714  }
715  ParamColor(const char *na, float r, float g, float b, float a)
716  : Param(na, COLOR_MSG, 4)
717  {
718  char *buf = new char[255];
719  list = new char *[3];
720  sprintf(buf, "%f", r);
721  list[0] = new char[strlen(buf) + 1];
722  strcpy(list[0], buf);
723  sprintf(buf, "%f", g);
724  list[1] = new char[strlen(buf) + 1];
725  strcpy(list[1], buf);
726  sprintf(buf, "%f", b);
727  list[2] = new char[strlen(buf) + 1];
728  strcpy(list[2], buf);
729  sprintf(buf, "%f", a);
730  list[3] = new char[strlen(buf) + 1];
731  strcpy(list[3], buf);
732  delete[] buf;
733  }
735  {
736  for (int j = 0; j < no_of_items(); j++)
737  delete[] list[j];
738  delete[] list;
739  }
740 };
741 
742 // holds everything necessary to work
743 // easily with messages from the controller
744 // to an application module
746 {
747 private:
748  char *m_name;
749  char *h_name;
750  char *inst_no;
757  char **port_names;
758  char **object_names;
759  char **object_types;
761  char **save_names;
765  void init_list();
766 
767 public:
769  : Message()
770  {
771  sender = m->sender;
772  send_type = m->send_type;
773  type = m->type;
774  length = m->length;
775  data = new char[strlen(m->data) + 1];
776  strcpy(data, m->data);
777  conn = m->conn; // never use this
778 
779  m_name = h_name = NULL;
780  inst_no = NULL;
781  object_types = port_names = object_names = save_names = release_names = NULL;
782  no_of_save_objects = no_of_release_objects = 0;
783  no_of_params_in = no_of_params_out = 0;
784  MAX_OUT_PAR = 100;
785  params_out = new Param *[MAX_OUT_PAR];
786  params_in = 0;
787  init_list();
788  }
789  ~CtlMessage();
790 
791  void get_header(char **m, char **h, char **inst)
792  {
793  *m = m_name;
794  *h = h_name, *inst = inst_no;
795  };
796 
797  int get_scalar_param(const char *, long *);
798  int get_scalar_param(const char *, float *);
799  int get_vector_param(const char *, int, long *);
800  int get_vector_param(const char *, int, float *);
801  int get_string_param(const char *, char **);
802  int get_text_param(const char *, char ***, int *line_num);
803  int get_boolean_param(const char *, int *);
804  int get_slider_param(const char *, long *min, long *max, long *value);
805  int get_slider_param(const char *, float *min, float *max, float *value);
806  int get_browser_param(const char *, char **);
807  int get_timer_param(const char *, long *start, long *delta, long *state);
808  int get_passwd_param(const char *, char **host, char **user, char **passwd);
809  int get_choice_param(const char *, int *);
810  int get_choice_param(const char *, char **);
811  int get_material_param(const char *, char **);
812  int get_colormapchoice_param(const char *, int *);
813  int get_colormapchoice_param(const char *, char **);
814  int get_colormap_param(const char *, float *min, float *max, int *len, colormap_type *type);
815  int get_color_param(const char *, float *r, float *g, float *b, float *a);
816 
817  int set_scalar_param(const char *, long);
818  int set_scalar_param(const char *, float);
819  int set_vector_param(const char *, int num, long *);
820  int set_vector_param(const char *, int num, float *);
821  int set_string_param(const char *, char *);
822  int set_text_param(const char *, char *, int);
823  int set_boolean_param(const char *, int);
824  int set_slider_param(const char *, long min, long max, long value);
825  int set_slider_param(const char *, float min, float max, float value);
826  int set_choice_param(const char *, int, char **, int);
827  int set_browser_param(const char *, char *, char *);
828  int set_timer_param(const char *, long start, long delta, long state);
829  int set_passwd_param(const char *, char *host, char *user, char *passwd);
830 
831  char *get_object_name(const char *name);
832  char *getObjectType(const char *name);
833 
834  int set_save_object(const char *name);
835  int set_release_object(const char *name);
836 
837  int create_finpart_message();
838  int create_finall_message();
839 
840  int is_port_connected(const char *name);
841 };
842 
843 class COVISEEXPORT RenderMessage : public Message // holds everything necessary to work
844 {
845  // easily with messages from the controller
846  // to the renderer
847  char *m_name;
848  char *h_name;
849  char *inst_no;
850  void init_list();
851 
852 public:
854  char **object_names;
856  : Message()
857  {
858  sender = m->sender;
859  send_type = m->send_type;
860  type = m->type;
861  length = m->length;
862  data = m->data;
863  m->data = NULL;
864  conn = m->conn;
865  delete m;
866  m_name = h_name = NULL;
867  inst_no = NULL;
868  no_of_objects = 0;
869  object_names = NULL;
870  init_list();
871  }
872  ~RenderMessage();
873  char *get_part(char *chdata = NULL);
874 };
875 }
876 #endif
const int FLOAT_SLIDER
Definition: covise_shm.h:146
int no_of_objects
Definition: covise_msg.h:853
GLfloat GLfloat GLfloat GLfloat h
Definition: khronos-glext.h:8441
int no_of_objects
Definition: covise_msg.h:751
int type
Definition: message.h:136
GLenum GLsizei len
Definition: khronos-glext.h:7440
long get_count()
Definition: covise_msg.h:116
int MAX_OUT_PAR
Definition: covise_msg.h:756
char * list
Definition: covise_msg.h:389
ParamChoice(const char *na, int num, char **l, int s)
Definition: covise_msg.h:591
char * name
Definition: covise_msg.h:139
ParamChoice(const char *na, int num, int s, char **l)
Definition: covise_msg.h:580
~ParamFloatVector()
Definition: covise_msg.h:252
ParamColor(const char *na, float r, float g, float b, float a)
Definition: covise_msg.h:715
Definition: covise_msg.h:327
~ParamBoolean()
Definition: covise_msg.h:412
int get_seq_no()
Definition: covise_msg.h:120
int line_num
Definition: covise_msg.h:353
GLuint const GLchar * name
Definition: khronos-glext.h:6722
Definition: covise_msg.h:573
int length
Definition: covise_msg.h:354
const int INT_SLIDER
Definition: covise_shm.h:161
#define COVISEEXPORT
Definition: coExport.h:176
~ParamBrowser()
Definition: covise_msg.h:321
ParamFloatSlider(const char *na, float min, float max, float val)
Definition: covise_msg.h:434
ParamIntSlider(const char *na, long min, long max, long val)
Definition: covise_msg.h:474
char * h_name
Definition: covise_msg.h:848
int type
Definition: covise_msg.h:140
int * port_connected
Definition: covise_msg.h:760
ParamBoolean(const char *na, char *l)
Definition: covise_msg.h:392
char ** list
Definition: covise_msg.h:677
char ** list
Definition: covise_msg.h:501
ParamBrowser(const char *na, char *l)
Definition: covise_msg.h:307
Definition: covise_msg.h:612
int no_of_release_objects
Definition: covise_msg.h:753
ParamTimer(const char *na, long start, long delta, long state)
Definition: covise_msg.h:514
colormap_type
Definition: covise_msg.h:79
ShmMessage(data_type d, long count)
Definition: covise_msg.h:92
GLdouble n
Definition: khronos-glext.h:8447
Definition: covise_msg.h:458
GLboolean GLboolean GLboolean b
Definition: khronos-glext.h:6895
const int PASSWD
Definition: covise_shm.h:156
Param ** params_in
Definition: covise_msg.h:763
ParamPasswd(const char *na, char *host, char *user, char *passwd)
Definition: covise_msg.h:554
~ParamColor()
Definition: covise_msg.h:734
Definition: covise_msg.h:223
ParamFloatScalar(const char *na, char *l)
Definition: covise_msg.h:175
const int TIMER
Definition: covise_shm.h:155
int no_of_items()
Definition: covise_msg.h:155
char * m_name
Definition: covise_msg.h:847
Param(const char *na, int t, int n)
Definition: covise_msg.h:144
char * h_name
Definition: covise_msg.h:749
GLdouble s
Definition: khronos-glext.h:6441
int get_offset()
Definition: covise_msg.h:127
Definition: covise_msg.h:538
~ParamChoice()
Definition: covise_msg.h:602
~ParamText()
Definition: covise_msg.h:376
Definition: covise_msg.h:301
char ** list
Definition: covise_msg.h:352
#define NULL
Definition: covise_list.h:22
char * list
Definition: covise_msg.h:654
int get_length()
Definition: covise_msg.h:372
ParamIntScalar(const char *na, char *l)
Definition: covise_msg.h:202
char * list
Definition: covise_msg.h:199
Definition: covise_msg.h:498
~ParamFloatSlider()
Definition: covise_msg.h:450
char ** object_names
Definition: covise_msg.h:854
Definition: message.h:111
int no
Definition: covise_msg.h:141
data_type get_data_type()
Definition: covise_msg.h:112
const int CHOICE
Definition: covise_shm.h:150
const int COVISE_BOOLEAN
Definition: covise_shm.h:148
char ** port_names
Definition: covise_msg.h:757
const int FLOAT_VECTOR
Definition: covise_shm.h:147
virtual ~Param()
Definition: covise_msg.h:163
Definition: covise_msg.h:843
GLuint GLuint GLsizei count
Definition: khronos-glext.h:6343
int no_of_params_in
Definition: covise_msg.h:754
int sender
Definition: message.h:134
RenderMessage(Message *m)
Definition: covise_msg.h:855
char * data
Definition: message.h:138
const int BROWSER
Definition: covise_shm.h:149
~ParamIntSlider()
Definition: covise_msg.h:490
ParamColormap(const char *na, int num, char **l)
Definition: covise_msg.h:680
Definition: covise_msg.h:196
ParamMaterial(const char *na, char *l)
Definition: covise_msg.h:657
const int INT_VECTOR
Definition: covise_shm.h:163
long data_type
Definition: message.h:74
char * getName() const
Definition: covise_msg.h:151
Definition: covise_msg.h:418
GLuint GLfloat * val
Definition: khronos-glext.h:7898
ParamIntVector(const char *na, int num, char **l)
Definition: covise_msg.h:268
char * inst_no
Definition: covise_msg.h:849
ParamColormapChoice(const char *na, int num, char **l, int s)
Definition: covise_msg.h:630
char * get_length()
Definition: covise_msg.h:339
~ParamFloatScalar()
Definition: covise_msg.h:190
~ParamIntScalar()
Definition: covise_msg.h:217
ParamIntScalar(const char *na, long val)
Definition: covise_msg.h:208
Definition: covise_msg.h:87
GLdouble GLdouble GLdouble r
Definition: khronos-glext.h:6457
char ** object_types
Definition: covise_msg.h:759
ParamColor(const char *na, int num, char **l)
Definition: covise_msg.h:705
Definition: covise_msg.h:674
void get_header(char **m, char **h, char **inst)
Definition: covise_msg.h:791
Definition: message_types.h:76
ParamFloatVector(const char *na, int num, float *l)
Definition: covise_msg.h:239
ParamFloatSlider(const char *na, int num, char **l)
Definition: covise_msg.h:424
char * list
Definition: covise_msg.h:330
ParamFloatScalar(const char *na, float val)
Definition: covise_msg.h:181
ParamString(const char *na, char *l)
Definition: covise_msg.h:333
char * inst_no
Definition: covise_msg.h:750
GLboolean GLboolean GLboolean GLboolean a
Definition: khronos-glext.h:6895
int get_line_number()
Definition: covise_msg.h:368
ParamPasswd(const char *na, int num, char **l)
Definition: covise_msg.h:544
~ParamTimer()
Definition: covise_msg.h:530
~ParamMaterial()
Definition: covise_msg.h:668
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: khronos-glext.h:8469
ParamBoolean(const char *na, int val)
Definition: covise_msg.h:398
Definition: covise_shm.h:379
char * get_length()
Definition: covise_msg.h:663
GLuint start
Definition: khronos-glext.h:6343
char * list
Definition: covise_msg.h:172
char ** list
Definition: covise_msg.h:461
Definition: covise_msg.h:651
Param ** params_out
Definition: covise_msg.h:764
char ** list
Definition: covise_msg.h:615
GLenum type
Definition: khronos-glext.h:6279
Definition: covise_msg.h:386
const int MATERIAL_MSG
Definition: covise_shm.h:166
int get_type()
Definition: covise_msg.h:159
const int INT_SCALAR
Definition: covise_shm.h:162
~ParamColormap()
Definition: covise_msg.h:691
Definition: covise_msg.h:81
int no_of_params_out
Definition: covise_msg.h:755
int no_of_save_objects
Definition: covise_msg.h:752
Definition: message_types.h:78
const GLfloat * m
Definition: khronos-glext.h:12117
CtlMessage(Message *m)
Definition: covise_msg.h:768
Definition: covise_msg.h:349
double length(EDGE_VECTOR &vector)
Definition: CuttingSurfaceGPMUtil.h:70
char ** save_names
Definition: covise_msg.h:761
char ** list
Definition: covise_msg.h:265
char ** list
Definition: covise_msg.h:576
GLboolean GLboolean g
Definition: khronos-glext.h:6895
Definition: covise_msg.h:699
const int TEXT
Definition: covise_shm.h:154
const int FLOAT_SCALAR
Definition: covise_shm.h:151
~ParamPasswd()
Definition: covise_msg.h:565
Connection * conn
Definition: message.h:139
Definition: covise_msg.h:82
char * m_name
Definition: covise_msg.h:748
char ** object_names
Definition: covise_msg.h:758
char ** release_names
Definition: covise_msg.h:762
Definition: covise_msg.h:169
~ParamString()
Definition: covise_msg.h:343
ParamFloatVector(const char *na, int num, char **l)
Definition: covise_msg.h:229
int length
Definition: message.h:137
const int COLOR_MSG
Definition: covise_shm.h:164
Definition: covise_msg.h:262
ParamTimer(const char *na, int num, char **l)
Definition: covise_msg.h:504
ParamColormapChoice(const char *na, int num, int s, char **l)
Definition: covise_msg.h:619
Definition: covise_msg.h:745
Definition: covise_msg.h:136
GLdouble GLdouble t
Definition: khronos-glext.h:6449
GLsizei const GLfloat * value
Definition: khronos-glext.h:6760
GLuint GLuint num
Definition: khronos-glext.h:10593
ParamIntSlider(const char *na, int num, char **l)
Definition: covise_msg.h:464
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: khronos-glext.h:6354
const int COLORMAPCHOICE_MSG
Definition: covise_shm.h:165
Definition: dmgr.h:213
int send_type
Definition: message.h:135
char ** list
Definition: covise_msg.h:226
ParamIntVector(const char *na, int num, long *l)
Definition: covise_msg.h:278
char ** list
Definition: covise_msg.h:702
char ** list
Definition: covise_msg.h:421
GLenum GLuint GLenum GLsizei length
Definition: khronos-glext.h:6279
int min(int a, int b)
Definition: cutil_math.h:60
char * list
Definition: covise_msg.h:304
~ParamColormapChoice()
Definition: covise_msg.h:641
const int STRING
Definition: covise_shm.h:137
int max(int a, int b)
Definition: cutil_math.h:55
int sel
Definition: covise_msg.h:616
ParamText(const char *na, char **l, int lineno, int len)
Definition: covise_msg.h:357
~ParamIntVector()
Definition: covise_msg.h:291
char ** list
Definition: covise_msg.h:541
ShmMessage()
Definition: covise_msg.h:104
const int COLORMAP_MSG
Definition: covise_shm.h:160
int sel
Definition: covise_msg.h:577