1 #ifndef __XIOS_ATTRIBUTE_ARRAY_IMPL_HPP__
2 #define __XIOS_ATTRIBUTE_ARRAY_IMPL_HPP__
13 template <
typename T_numtype,
int N_rank>
18 template <
typename T_numtype,
int N_rank>
25 template <
typename T_numtype,
int N_rank>
29 umap.insert(umap.end(), std::make_pair(
id,
this));
32 template <
typename T_numtype,
int N_rank>
34 xios_map<StdString, CAttribute*> & umap)
38 umap.insert(umap.end(), std::make_pair(
id,
this));
43 template <
typename T_numtype,
int N_rank>
47 inheritedValue.reset() ;
50 template <
typename T_numtype,
int N_rank>
56 template <
typename T_numtype,
int N_rank>
59 this->
resize(value.shape()) ;
63 template <
typename T_numtype,
int N_rank>
69 template <
typename T_numtype,
int N_rank>
76 template <
typename T_numtype,
int N_rank>
82 template <
typename T_numtype,
int N_rank>
87 inheritedValue.resize(attr.shape()) ;
92 template <
typename T_numtype,
int N_rank>
95 if (this->isEmpty())
return inheritedValue.
copy() ;
96 else return getValue() ;
99 template <
typename T_numtype,
int N_rank>
102 return !this->isEmpty() || !inheritedValue.isEmpty() ;
105 template <
typename T_numtype,
int N_rank>
109 return this->isEqual_(tmp);
112 template <
typename T_numtype,
int N_rank>
123 template <
typename T_numtype,
int N_rank>
131 template <
typename T_numtype,
int N_rank>
135 if (! isEmpty() && this->hasId() && (this->numElements()!=0))
141 template <
typename T_numtype,
int N_rank>
147 template <
typename T_numtype,
int N_rank>
153 template <
typename T_numtype,
int N_rank>
159 template <
typename T_numtype,
int N_rank>
162 CInterface::AttributeCInterface<CArray<T_numtype, N_rank> >(oss, className, this->getName());
165 template <
typename T_numtype,
int N_rank>
168 CInterface::AttributeFortran2003Interface<CArray<T_numtype, N_rank> >(oss, className, this->getName());
171 template <
typename T_numtype,
int N_rank>
174 CInterface::AttributeFortranInterfaceDeclaration<CArray<T_numtype, N_rank> >(oss, className, this->getName() +
"_");
177 template <
typename T_numtype,
int N_rank>
180 CInterface::AttributeFortranInterfaceBody<CArray<T_numtype, N_rank> >(oss, className, this->getName());
183 template <
typename T_numtype,
int N_rank>
186 CInterface::AttributeFortranInterfaceDeclaration<CArray<T_numtype, N_rank> >(oss, className, this->getName());
189 template <
typename T_numtype,
int N_rank>
192 CInterface::AttributeFortranInterfaceGetDeclaration<CArray<T_numtype, N_rank> >(oss, className, this->getName() +
"_");
195 template <
typename T_numtype,
int N_rank>
198 CInterface::AttributeFortranInterfaceGetBody<CArray<T_numtype, N_rank> >(oss, className, this->getName());
201 template <
typename T_numtype,
int N_rank>
204 CInterface::AttributeFortranInterfaceGetDeclaration<CArray<T_numtype, N_rank> >(oss, className, this->getName());
208 #endif // __XIOS_ATTRIBUTE_ENUM_IMPL_HPP__
bool fromBuffer(CBufferIn &buffer)
bool hasInheritedValue(void) const
bool isEqual_(const CAttributeArray &attr)
////////////////////// Déclarations ////////////////////// ///
bool toBuffer(CBufferOut &buffer) const
virtual void generateFortranInterfaceDeclaration_(ostream &oss, const string &className)
StdString _dump(void) const
virtual void generateFortranInterfaceGetDeclaration_(ostream &oss, const string &className)
CAttributeArray(const StdString &id)
Constructeurs ///.
bool _fromBuffer(CBufferIn &buffer)
bool isEqual(const CAttribute &attr)
CArray< T_numtype, N_rank > getValue(void) const
Accesseur ///.
StdString _toString(void) const
virtual void generateFortranInterfaceGetDeclaration(ostream &oss, const string &className)
virtual string dump(void) const
virtual void generateFortranInterfaceGetBody_(ostream &oss, const string &className)
virtual void generateCInterface(ostream &oss, const string &className)
void _fromString(const StdString &str)
axisDest_ index resize(nDest)
virtual void generateFortran2003Interface(ostream &oss, const string &className)
void setValue(const CArray< T_numtype, N_rank > &value)
Mutateurs ///.
axisDest_ n_glo setValue(extractN_)
void set(const CAttribute &attr)
CArray< T_numtype, N_rank > getInheritedValue(void) const
bool _toBuffer(CBufferOut &buffer) const
virtual void fromString(const string &str)
////////////////////// Déclarations ////////////////////// ///
std::ostringstream StdOStringStream
Définition de types (issus de la bibliothèque standard)///.
void setInheritedValue(const CAttributeArray &attr)
virtual string toString(void) const
virtual void generateFortranInterfaceBody_(ostream &oss, const string &className)
CArray< T_numtype, N_rank > copy() const
virtual void generateFortranInterfaceDeclaration(ostream &oss, const string &className)