SpecTypeFlags.hxx
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __SpecTypeFlags__
00023 #define __SpecTypeFlags__
00024
00025 #include "Flags.hxx"
00026
00027 namespace CLAM
00028 {
00029
00042 struct SpecTypeFlags : public Flags<4>
00043 {
00044 public:
00045 static tFlagValue sFlagValues[];
00046 static tValue sDefault;
00047 virtual Component * Species() const {
00048 return new SpecTypeFlags();
00049 }
00050 typedef enum {
00051 eComplex=0,
00052 ePolar=1,
00053 eMagPhase=2,
00054 eMagPhaseBPF=3
00055 } tFlags;
00056
00057 SpecTypeFlags () :
00058 Flags<4>(sFlagValues),
00059 bComplex(operator[](eComplex)),
00060 bPolar(operator[](ePolar)),
00061 bMagPhase(operator[](eMagPhase)),
00062 bMagPhaseBPF(operator[](eMagPhaseBPF))
00063 {
00064 bComplex = 0;
00065 bPolar = 0;
00066 bMagPhase = 1;
00067 bMagPhaseBPF = 0;
00068 }
00069
00070
00071 SpecTypeFlags (const SpecTypeFlags &t) :
00072 Flags<4>(sFlagValues,t),
00073 bComplex(operator[](eComplex)),
00074 bPolar(operator[](ePolar)),
00075 bMagPhase(operator[](eMagPhase)),
00076 bMagPhaseBPF(operator[](eMagPhaseBPF))
00077 {};
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089 reference bComplex;
00090 reference bPolar;
00091 reference bMagPhase;
00092 reference bMagPhaseBPF;
00093
00094 };
00095
00096 }
00097
00098 #endif
00099