XIOS  1.0
Xml I/O Server
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros
Référence de la classe xios::CNc4DataInput

#include <nc4_data_input.hpp>

+ Graphe d'héritage de xios::CNc4DataInput:
+ Graphe de collaboration de xios::CNc4DataInput:

Types publics

typedef CINetCDF4 SuperClassWriter
 Type definitions ///. Plus de détails...
 
typedef CDataInput SuperClass
 
- Types publics inherited from xios::CDataInput
enum  EDataInputType { ONE_FILE = 0, MULTI_GROUP, MULTI_FILE }
 Input type ///. Plus de détails...
 

Fonctions membres publiques

 CNc4DataInput (const StdString &filename, MPI_Comm comm_file, bool multifile, bool isCollective=true, bool readMetaDataPar=false, bool ugridConvention=false, const StdString &timeCounterName="time_counter")
 Constructors ///. Plus de détails...
 
 CNc4DataInput (const CNc4DataInput &dataInput)
 
 CNc4DataInput (const CNc4DataInput *const dataInput)
 
virtual ~CNc4DataInput (void)
 Destructor ///. Plus de détails...
 
const StdStringgetFileName (void) const
 Getters ///. Plus de détails...
 
- Fonctions membres publiques inherited from xios::CDataInput
StdSize getFieldNbRecords (CField *field)
 Read methods ///. Plus de détails...
 
void readFieldData (CField *field)
 
void readFieldAttributesMetaData (CField *field)
 
void readFieldAttributesValues (CField *field)
 
void closeFile (void)
 
virtual ~CDataInput (void)
 

Fonctions membres protégées

virtual StdSize getFieldNbRecords_ (CField *field)
 
virtual void readFieldData_ (CField *field)
 
virtual void readFieldAttributes_ (CField *field, bool readAttributeValues)
 
virtual void closeFile_ (void)
 
- Fonctions membres protégées inherited from xios::CINetCDF4
int getGroup (const CVarPath *const path=NULL)
 Getters ///. Plus de détails...
 
int getVariable (const StdString &varname, const CVarPath *const path=NULL)
 
int getDimension (const StdString &dimname, const CVarPath *const path=NULL)
 
int getUnlimitedDimension (const CVarPath *const path=NULL)
 
int getAttributeId (const StdString &name, const StdString *const var=NULL, const CVarPath *const path=NULL)
 
std::pair< nc_type, StdSizegetAttribute (const StdString &attname, const StdString *const var=NULL, const CVarPath *const path=NULL)
 
void getDataInfo (const StdString &var, const CVarPath *const path, StdSize record, std::vector< StdSize > &sstart, std::vector< StdSize > &scount, StdSize &array_size, const std::vector< StdSize > *start=NULL, const std::vector< StdSize > *count=NULL)
 
 CINetCDF4 (const StdString &filename, const MPI_Comm *comm=NULL, bool multifile=true, bool readMetaDataPar=false, const StdString &timeCounterName="time_counter")
 Constructors ///. Plus de détails...
 
 CINetCDF4 (const CINetCDF4 &inetcdf4)
 
 CINetCDF4 (const CINetCDF4 *const inetcdf4)
 
virtual ~CINetCDF4 (void)
 Destructor ///. Plus de détails...
 
void close (void)
 
StdSize getNbOfTimestep (const CVarPath *const path=NULL)
 Getters ///. Plus de détails...
 
StdString getUnlimitedDimensionName (const CVarPath *const path=NULL)
 
const StdStringgetTimeCounterName (void) const
 
StdString getCoordinatesId (const StdString &name, const CVarPath *const path=NULL)
 
StdString getBoundsId (const StdString &name, const CVarPath *const path=NULL)
 
StdString getLonCoordName (const StdString &varname, const CVarPath *const path=NULL)
 
StdString getLatCoordName (const StdString &varname, const CVarPath *const path=NULL)
 
StdString getVertCoordName (const StdString &varname, const CVarPath *const path=NULL)
 
std::set< StdStringgetCoordVariables (const CVarPath *const path=NULL)
 
std::set< StdStringgetBoundVariables (const CVarPath *const path=NULL)
 
std::list< StdStringgetGroups (const CVarPath *const path=NULL)
 
std::list< StdStringgetVariables (const CVarPath *const path=NULL)
 
std::list< StdStringgetDataVariables (bool _is3D=true, bool _isRecti=true, bool _isCurvi=true, bool _isUnstr=true, bool _isCellData=true, bool _isTemporal=true, const CVarPath *const path=NULL)
 
std::list< StdStringgetAttributes (const StdString *const var=NULL, const CVarPath *const path=NULL)
 
std::list< StdStringgetDimensionsList (const StdString *const var=NULL, const CVarPath *const path=NULL)
 
std::list< StdStringgetCoordinatesIdList (const StdString &name, const CVarPath *const path=NULL)
 
std::map< StdString, StdSizegetDimensions (const StdString *const var=NULL, const CVarPath *const path=NULL)
 
StdSize getNbVertex (const StdString &name, const CVarPath *const path=NULL)
 
template<class T >
getMissingValue (const StdString &name, const CVarPath *const path=NULL)
 
template<class T >
std::vector< T > getAttributeValue (const StdString &name, const StdString *const var=NULL, const CVarPath *const path=NULL)
 
StdString getAttributeValue (const StdString &name, const StdString *const var, const CVarPath *const path)
 
template<class T >
void getData (CArray< T, 1 > &data, const StdString &var, const CVarPath *const path=NULL, StdSize record=(size_t)(-1))
 
template<class T , int Ndim>
void getData (CArray< T, Ndim > &data, const StdString &var, bool collective, StdSize record, const std::vector< StdSize > *start=NULL, const std::vector< StdSize > *count=NULL)
 
bool hasMissingValue (const StdString &name, const CVarPath *const path=NULL)
 Tests ///. Plus de détails...
 
bool hasAttribute (const StdString &name, const StdString *const var=NULL, const CVarPath *const path=NULL)
 
bool hasVariable (const StdString &name, const CVarPath *const path=NULL)
 
bool hasCoordinates (const StdString &name, const CVarPath *const path=NULL)
 
bool hasTemporalDim (const CVarPath *const path=NULL)
 
bool hasBounds (const StdString &name, const CVarPath *const path=NULL)
 
bool isBound (const StdString &name, const CVarPath *const path=NULL)
 
bool isCoordinate (const StdString &name, const CVarPath *const path=NULL)
 
bool isRectilinear (const StdString &name, const CVarPath *const path=NULL)
 
bool isCurvilinear (const StdString &name, const CVarPath *const path=NULL)
 
bool isUnknown (const StdString &name, const CVarPath *const path=NULL)
 
bool isUnstructured (const StdString &name, const CVarPath *const path=NULL)
 
bool isTemporal (const StdString &name, const CVarPath *const path=NULL)
 
bool is3Dim (const StdString &name, const CVarPath *const path=NULL)
 
bool isCellGrid (const StdString &name, const CVarPath *const path=NULL)
 
bool isLonOrLat (const StdString &varname, const CVarPath *const path=NULL)
 
template<>
void getData (CArray< int, 1 > &data, const StdString &var, const CVarPath *const path, StdSize record)
 
template<>
void getData (CArray< double, 1 > &data, const StdString &var, const CVarPath *const path, StdSize record)
 
template<>
void getData (CArray< float, 1 > &data, const StdString &var, const CVarPath *const path, StdSize record)
 
StdSize getFieldNbRecords (CField *field)
 Read methods ///. Plus de détails...
 
void readFieldData (CField *field)
 
void readFieldAttributesMetaData (CField *field)
 
void readFieldAttributesValues (CField *field)
 
void closeFile (void)
 
virtual ~CDataInput (void)
 

Fonctions membres privées

void readDomainAttributesFromFile (CDomain *domain, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attribute value of a domain from a file. Plus de détails...
 
void readDomainAttributeValueFromFile (CDomain *domain, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attributes of a domain from a file. Plus de détails...
 
void readAxisAttributesFromFile (CAxis *axis, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attributes of an axis from a file. Plus de détails...
 
void readAxisAttributeValueFromFile (CAxis *axis, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attribute value of an axis from a file. Plus de détails...
 
void readScalarAttributesFromFile (CScalar *scalar, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attributes of a scalar from a file. Plus de détails...
 
void readScalarAttributeValueFromFile (CScalar *scalar, std::list< std::pair< StdString, StdSize > > &dimSizeMap, int elementPosition, const StdString &fieldId)
 Read attribute value of an axis from a file. Plus de détails...
 
template<typename T , int Ndim>
void readFieldVariableValue (CArray< T, Ndim > &var, const StdString &varId, const std::vector< StdSize > &nBegin, const std::vector< StdSize > &nSize, bool forceIndependent=false)
 

Attributs privés

std::set< StdStringreadMetaDataDomains_
 
std::set< StdStringreadValueDomains_
 
std::set< StdStringreadMetaDataAxis_
 
std::set< StdStringreadValueAxis_
 
std::set< StdStringreadMetaDataScalar_
 
std::set< StdStringreadValueScalar_
 
MPI_Comm comm_file
 Private attributes ///. Plus de détails...
 
const StdString filename
 
bool isCollective
 
bool ugridConvention
 

Additional Inherited Members

- Types protégés inherited from xios::CDataInput
enum  EDataInputType { ONE_FILE = 0, MULTI_GROUP, MULTI_FILE }
 Input type ///. Plus de détails...
 
- Attributs protégés inherited from xios::CDataInput
EDataInputType type
 Protected properties ///. Plus de détails...
 

Description détaillée

Définition à la ligne 15 du fichier nc4_data_input.hpp.

Documentation des définitions de type membres

Définition à la ligne 22 du fichier nc4_data_input.hpp.

Type definitions ///.

Définition à la ligne 21 du fichier nc4_data_input.hpp.

Documentation des constructeurs et destructeur

xios::CNc4DataInput::CNc4DataInput ( const StdString filename,
MPI_Comm  comm_file,
bool  multifile,
bool  isCollective = true,
bool  readMetaDataPar = false,
bool  ugridConvention = false,
const StdString timeCounterName = "time_counter" 
)

Constructors ///.

Définition à la ligne 12 du fichier nc4_data_input.cpp.

Références xios::CDataInput::MULTI_FILE, xios::CDataInput::ONE_FILE, et xios::CDataInput::type.

xios::CNc4DataInput::CNc4DataInput ( const CNc4DataInput dataInput)
xios::CNc4DataInput::CNc4DataInput ( const CNc4DataInput *const  dataInput)
xios::CNc4DataInput::~CNc4DataInput ( void  )
virtual

Destructor ///.

Définition à la ligne 27 du fichier nc4_data_input.cpp.

Documentation des fonctions membres

void xios::CNc4DataInput::closeFile_ ( void  )
protectedvirtual

Implémente xios::CDataInput.

Définition à la ligne 613 du fichier nc4_data_input.cpp.

Références xios::CINetCDF4::close().

+ Voici le graphe d'appel pour cette fonction :

StdSize xios::CNc4DataInput::getFieldNbRecords_ ( CField field)
protectedvirtual

Implémente xios::CDataInput.

Définition à la ligne 30 du fichier nc4_data_input.cpp.

const StdString& xios::CNc4DataInput::getFileName ( void  ) const

Getters ///.

CATCH void xios::CNc4DataInput::readAxisAttributesFromFile ( CAxis axis,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attributes of an axis from a file.

Paramètres
[in]axisaxis whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of axis in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 534 du fichier nc4_data_input.cpp.

Références xios::ERROR.

CATCH void xios::CNc4DataInput::readAxisAttributeValueFromFile ( CAxis axis,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attribute value of an axis from a file.

Paramètres
[in]axisaxis whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of axis in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 562 du fichier nc4_data_input.cpp.

CATCH void xios::CNc4DataInput::readDomainAttributesFromFile ( CDomain domain,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attribute value of a domain from a file.

Paramètres
[in]domaindomain whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of domain in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 454 du fichier nc4_data_input.cpp.

Références xios::ERROR.

CATCH void xios::CNc4DataInput::readDomainAttributeValueFromFile ( CDomain domain,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attributes of a domain from a file.

Paramètres
[in]domaindomain whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of domain in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 264 du fichier nc4_data_input.cpp.

Références xios::ERROR.

CATCH void xios::CNc4DataInput::readFieldAttributes_ ( CField field,
bool  readAttributeValues 
)
protectedvirtual

Implémente xios::CDataInput.

Définition à la ligne 128 du fichier nc4_data_input.cpp.

Références xios::ERROR, xios::CGrid::getAxis(), xios::CGrid::getDomains(), xios::CGrid::getScalars(), et xios::numElement.

+ Voici le graphe d'appel pour cette fonction :

template<typename T , int Ndim>
void xios::CNc4DataInput::readFieldVariableValue ( CArray< T, Ndim > &  var,
const StdString varId,
const std::vector< StdSize > &  nBegin,
const std::vector< StdSize > &  nSize,
bool  forceIndependent = false 
)
private

Définition à la ligne 79 du fichier nc4_data_input.hpp.

Références xios::ERROR, xios::CINetCDF4::getData(), isCollective, xios::CDataInput::MULTI_FILE, xios::CDataInput::ONE_FILE, et xios::CDataInput::type.

+ Voici le graphe d'appel pour cette fonction :

CATCH void xios::CNc4DataInput::readScalarAttributesFromFile ( CScalar scalar,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attributes of a scalar from a file.

Paramètres
[in]scalarscalar whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of scalar in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 594 du fichier nc4_data_input.cpp.

void xios::CNc4DataInput::readScalarAttributeValueFromFile ( CScalar scalar,
std::list< std::pair< StdString, StdSize > > &  dimSizeMap,
int  elementPosition,
const StdString fieldId 
)
private

Read attribute value of an axis from a file.

Paramètres
[in]axisaxis whose attributes are read from the file
[in]dimSizeMapDimensions and and their corresponding names and size read from file
[in]emelentPositionposition of axis in grid
[in]fieldIdid (or name) associated with the grid

Définition à la ligne 607 du fichier nc4_data_input.cpp.

Documentation des données membres

MPI_Comm xios::CNc4DataInput::comm_file
private

Private attributes ///.

Définition à la ligne 72 du fichier nc4_data_input.hpp.

const StdString xios::CNc4DataInput::filename
private

Définition à la ligne 73 du fichier nc4_data_input.hpp.

bool xios::CNc4DataInput::isCollective
private

Définition à la ligne 74 du fichier nc4_data_input.hpp.

Référencé par readFieldVariableValue().

std::set<StdString> xios::CNc4DataInput::readMetaDataAxis_
private

Définition à la ligne 67 du fichier nc4_data_input.hpp.

std::set<StdString> xios::CNc4DataInput::readMetaDataDomains_
private

Définition à la ligne 66 du fichier nc4_data_input.hpp.

std::set<StdString> xios::CNc4DataInput::readMetaDataScalar_
private

Définition à la ligne 68 du fichier nc4_data_input.hpp.

std::set<StdString> xios::CNc4DataInput::readValueAxis_
private

Définition à la ligne 67 du fichier nc4_data_input.hpp.

std::set<StdString> xios::CNc4DataInput::readValueDomains_
private

Définition à la ligne 66 du fichier nc4_data_input.hpp.

std::set<StdString> xios::CNc4DataInput::readValueScalar_
private

Définition à la ligne 68 du fichier nc4_data_input.hpp.

bool xios::CNc4DataInput::ugridConvention
private

Définition à la ligne 75 du fichier nc4_data_input.hpp.


La documentation de cette classe a été générée à partir des fichiers suivants :