Ignore:
Timestamp:
06/04/10 16:18:34 (14 years ago)
Author:
ymipsl
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • XMLIO_V2/dev/trunk/src/XMLIO/base_attribut.hpp

    r79 r98  
    1 #ifndef BASE_ATTRIBUT_HPP 
    2 #define BASE_ATTRIBUT_HPP 
    3 #include "xmlio_std.hpp" 
     1#ifndef __BASE_ATTRIBUT__ 
     2#define __BASE_ATTRIBUT__ 
    43 
    5 class CBaseAttribut 
    6 { 
    7   public: 
    8    
    9   virtual const char * getName(void) const = 0  ; 
    10       
    11   virtual ostream & print(ostream& o) const = 0  ; 
    12    
    13   friend ostream& operator <<(ostream& o,const CBaseAttribut& Attr) 
    14   { 
    15     return Attr.print(o) ; 
    16   } 
    17  
    18    
    19   virtual void setValue(const int & value)          { error_set() ; } 
    20   virtual void setValue(const Array<int,1>& value)  { error_set() ; } 
    21   virtual void setValue(const Array<int,2>& value)  { error_set() ; } 
    22   virtual void setValue(const Array<int,3>& value)  { error_set() ; } 
    23    
    24   virtual void setValue(const double & value)          { error_set() ; } 
    25   virtual void setValue(const Array<double,1>& value)  { error_set() ; } 
    26   virtual void setValue(const Array<double,2>& value)  { error_set() ; } 
    27   virtual void setValue(const Array<double,3>& value)  { error_set() ; } 
    28    
    29   virtual void setValue(const bool & value)          { error_set() ; } 
    30   virtual void setValue(const Array<bool,1>& value)  { error_set() ; } 
    31   virtual void setValue(const Array<bool,2>& value)  { error_set() ; } 
    32   virtual void setValue(const Array<bool,3>& value)  { error_set() ; } 
    33    
    34   virtual void setValue(const char * value)            { error_set() ; } 
    35   virtual void setValue(const string & value)          { error_set() ; } 
    36   virtual void setValue(const Array<string,1>& value)  { error_set() ; } 
    37   virtual void setValue(const Array<string,2>& value)  { error_set() ; } 
    38   virtual void setValue(const Array<string,3>& value)  { error_set() ; } 
    39    
    40   virtual void setValue(const char & value)          { error_set() ; } 
    41   virtual void setValue(const Array<char,1>& value)  { error_set() ; } 
    42   virtual void setValue(const Array<char,2>& value)  { error_set() ; } 
    43   virtual void setValue(const Array<char,3>& value)  { error_set() ; } 
     4using std::ostream; 
     5using namespace blitz ; 
    446 
    457 
    46   virtual void getValue(int & value) const        { error_get() ; } 
    47   virtual void getValue(Array<int,1>& value) const  { error_get() ; } 
    48   virtual void getValue(Array<int,2>& value) const  { error_get() ; } 
    49   virtual void getValue(Array<int,3>& value) const  { error_get() ; } 
     8using XMLIOSERVER::XMLIOIncompatibeTypeException; 
     9 
     10namespace XMLIOSERVER 
     11{ 
     12   class BaseAttribut 
     13   { 
     14     public: 
     15      
     16     virtual const char * getName(void) const = 0  ; 
     17         
     18     virtual ostream & print(ostream& o) const = 0  ; 
     19      
     20     friend ostream& operator <<(ostream& o,const BaseAttribut& Attr) 
     21     {return Attr.print(o) ; } 
     22      
     23     virtual const char * getId(void) {return getName();} ; 
     24     bool hasId(void){return (true);} 
     25 
     26     virtual void setFromString(const std::string str) = 0; 
     27       
     28     virtual void setValue(const int & value)          { error_set() ; } 
     29     virtual void setValue(const Array<int,1>& value)  { error_set() ; } 
     30     virtual void setValue(const Array<int,2>& value)  { error_set() ; } 
     31     virtual void setValue(const Array<int,3>& value)  { error_set() ; } 
     32      
     33     virtual void setValue(const double & value)          { error_set() ; } 
     34     virtual void setValue(const Array<double,1>& value)  { error_set() ; } 
     35     virtual void setValue(const Array<double,2>& value)  { error_set() ; } 
     36     virtual void setValue(const Array<double,3>& value)  { error_set() ; } 
     37      
     38     virtual void setValue(const bool & value)          { error_set() ; } 
     39     virtual void setValue(const Array<bool,1>& value)  { error_set() ; } 
     40     virtual void setValue(const Array<bool,2>& value)  { error_set() ; } 
     41     virtual void setValue(const Array<bool,3>& value)  { error_set() ; } 
     42      
     43     virtual void setValue(const char * value)            { error_set() ; } 
     44     virtual void setValue(const string & value)          { error_set() ; } 
     45     virtual void setValue(const Array<string,1>& value)  { error_set() ; } 
     46     virtual void setValue(const Array<string,2>& value)  { error_set() ; } 
     47     virtual void setValue(const Array<string,3>& value)  { error_set() ; } 
     48      
     49     virtual void setValue(const char & value)          { error_set() ; } 
     50     virtual void setValue(const Array<char,1>& value)  { error_set() ; } 
     51     virtual void setValue(const Array<char,2>& value)  { error_set() ; } 
     52     virtual void setValue(const Array<char,3>& value)  { error_set() ; } 
     53 
     54 
     55     virtual void getValue(int & value) const        { error_get() ; } 
     56     virtual void getValue(Array<int,1>& value) const  { error_get() ; } 
     57     virtual void getValue(Array<int,2>& value) const  { error_get() ; } 
     58     virtual void getValue(Array<int,3>& value) const  { error_get() ; } 
     59      
     60     virtual void getValue(double & value) const          { error_get() ; } 
     61     virtual void getValue(Array<double,1>& value) const  { error_get() ; } 
     62     virtual void getValue(Array<double,2>& value) const  { error_get() ; } 
     63     virtual void getValue(Array<double,3>& value) const  { error_get() ; } 
     64      
     65     virtual void getValue(bool & value) const          { error_get() ; } 
     66     virtual void getValue(Array<bool,1>& value) const  { error_get() ; } 
     67     virtual void getValue(Array<bool,2>& value) const  { error_get() ; } 
     68     virtual void getValue(Array<bool,3>& value) const  { error_get() ; } 
     69      
     70     virtual void getValue(char * value) const            { error_get() ; } 
     71     virtual void getValue(string & value) const          { error_get() ; } 
     72     virtual void getValue(Array<string,1>& value) const  { error_get() ; } 
     73     virtual void getValue(Array<string,2>& value) const  { error_get() ; } 
     74     virtual void getValue(Array<string,3>& value) const  { error_get() ; } 
     75      
     76     virtual void getValue(char & value) const          { error_get() ; } 
     77     virtual void getValue(Array<char,1>& value) const  { error_get() ; } 
     78     virtual void getValue(Array<char,2>& value) const  { error_get() ; } 
     79     virtual void getValue(Array<char,3>& value) const  { error_get() ; } 
     80 
     81     static void error_set(void) 
     82     { 
     83        throw XMLIOIncompatibeTypeException("BaseAttribut::set<type> > Setting value type is incompatible with attribut type"); 
     84     } 
     85 
     86     static void error_get(void) 
     87     { 
     88        throw XMLIOIncompatibeTypeException("BaseAttribut::set<type> >Getting value type is incompatible with attribut type"); 
     89     } 
     90   }; //class BaseAttribut 
     91} // namespace XMLIOSERVER 
     92 
     93#endif //__BASE_ATTRIBUT__ 
    5094   
    51   virtual void getValue(double & value) const          { error_get() ; } 
    52   virtual void getValue(Array<double,1>& value) const  { error_get() ; } 
    53   virtual void getValue(Array<double,2>& value) const  { error_get() ; } 
    54   virtual void getValue(Array<double,3>& value) const  { error_get() ; } 
    55    
    56   virtual void getValue(bool & value) const          { error_get() ; } 
    57   virtual void getValue(Array<bool,1>& value) const  { error_get() ; } 
    58   virtual void getValue(Array<bool,2>& value) const  { error_get() ; } 
    59   virtual void getValue(Array<bool,3>& value) const  { error_get() ; } 
    60    
    61   virtual void getValue(char * value) const            { error_get() ; } 
    62   virtual void getValue(string & value) const          { error_get() ; } 
    63   virtual void getValue(Array<string,1>& value) const  { error_get() ; } 
    64   virtual void getValue(Array<string,2>& value) const  { error_get() ; } 
    65   virtual void getValue(Array<string,3>& value) const  { error_get() ; } 
    66    
    67   virtual void getValue(char & value) const          { error_get() ; } 
    68   virtual void getValue(Array<char,1>& value) const  { error_get() ; } 
    69   virtual void getValue(Array<char,2>& value) const  { error_get() ; } 
    70   virtual void getValue(Array<char,3>& value) const  { error_get() ; } 
    71  
    72   static void error_set(void) 
    73   { 
    74      error("CBaseAttribut::set<type>")<<"Setting value type is incompatible" 
    75                                       <<" with attribut type"<<endl ; 
    76   } 
    77  
    78   static void error_get(void) 
    79   { 
    80      error("CBaseAttribut::set<type>")<<"Getting value type is incompatible" 
    81                                       <<" with attribut type"<<endl ; 
    82   } 
    83 } ; 
    84  
    85 #endif  
    86    
Note: See TracChangeset for help on using the changeset viewer.