Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Search  

/home/mrm/Simex/src/se_data_vector.h

Go to the documentation of this file.
00001 #ifndef Se_Data_Vector_Included
00002 #define Se_Data_Vector_Included
00003 
00004 #include <vector>
00005 #include <iostream>
00006 
00007 #ifdef SIMEX_MASTER
00008 #include <gtk/gtk.h>
00009 #endif
00010 
00011 #include "se_data.h"
00012 #include "se_string.h"
00013 
00014 namespace Se{
00015 
00016 class Object;
00017 
00018 class Data_Vector:public std::vector<Data *>{
00019 
00020 #ifdef SIMEX_MASTER
00021   GtkWidget *name_button;
00022   GtkWidget *size_button;
00023   GtkWidget *data_button;
00024   GtkWidget *type_button;
00025   GtkWidget *mode_button;
00026   GtkWidget *access_button;
00027   GtkWidget *accumulation_button;
00028   GtkWidget *table_name_button;
00029   GtkWidget *table_size_button;
00030   GtkWidget *table_data_button;
00031 
00032   Object *parent;
00033 #endif
00034 
00035  public:
00036   //Data
00037   Data_Vector();
00038   Data *find(String name);
00039 
00040   //Interface
00041 #ifdef SIMEX_MASTER
00042   Data_Vector(Object *parent);
00043   void push_back_and_set_parent(Data *the_data);
00044   void set_parent(Object *the_object);
00045   void set_parent_for_all(Object *the_object);
00046 
00047   void build(int x,int y,GtkTable *table);
00048 #endif
00049 
00050   /*********************************************************************
00051    *Data access
00052    *********************************************************************/  
00053   void clear_variable(const char *name);
00054   void set_int_variable(const char *name, int value);
00055   void set_float_variable(const char *name,float value);
00056   void set_double_variable(const char *name,double value);
00057   void set_int_table(const char *name, int *value,int size);
00058   void set_float_table(const char *name,float *value,int size);
00059   void set_double_table(const char *name,double *value,int size);
00060   void add_int(const char *name,int value);
00061   void add_float(const char *name,float value);
00062   void add_double(const char *name,double value); 
00063 
00064   /*********************************************************************
00065    *Print
00066    *********************************************************************/
00067    friend std::ostream& operator<< (std::ostream& s,
00068                                     const Data_Vector& the_vect);
00069 };
00070 
00071  std::ostream& operator<< (std::ostream& s,
00072                            const Data_Vector& the_vect);
00073 
00074 
00075 }
00076 #endif

Generated on Sat Jul 19 04:01:26 2003 for SIMEX by doxygen1.2.18