Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::VariableIOReaderMng Class Reference

Reading management for variables. More...

#include <arcane/impl/internal/VariableMng.h>

Inheritance diagram for Arcane::VariableIOReaderMng:
Collaboration diagram for Arcane::VariableIOReaderMng:

Classes

class  VariableDataTypeInfo
class  IDataReaderWrapper
 Interface to use IDataReader or IDataReader2. More...
class  OldDataReaderWrapper
 Wrapper for IDataReader. More...
class  DataReaderWrapper
 Wrapper for IDataReader2. More...

Public Member Functions

 VariableIOReaderMng (VariableMng *vm)
void readCheckpoint (ICheckpointReader *service)
void readCheckpoint (const CheckpointReadInfo &infos)
void readVariables (IDataReader *reader, IVariableFilter *filter)
Public Member Functions inherited from Arcane::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Constructs an accessor via the trace manager m.
 TraceAccessor (const TraceAccessor &rhs)
 Copy constructor.
TraceAccessoroperator= (const TraceAccessor &rhs)
 Copy assignment operator.
virtual ~TraceAccessor ()
 Frees resources.
ITraceMngtraceMng () const
 Trace manager.
TraceMessage info () const
 Flow for an information message.
TraceMessage pinfo () const
 Flow for a parallel information message.
TraceMessage info (char category) const
 Flow for an information message of a given category.
TraceMessage pinfo (char category) const
 Flow for a parallel information message of a given category.
TraceMessage info (bool v) const
 Flow for an information message.
TraceMessage warning () const
 Flow for a warning message.
TraceMessage pwarning () const
TraceMessage error () const
 Flow for an error message.
TraceMessage perror () const
TraceMessage log () const
 Flow for a log message.
TraceMessage plog () const
 Flow for a log message.
TraceMessage logdate () const
 Flow for a log message preceded by the date.
TraceMessage fatal () const
 Flow for a fatal error message.
TraceMessage pfatal () const
 Flow for a parallel fatal error message.
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flow for a debug message.
Trace::eDebugLevel configDbgLevel () const
 Debug level of the configuration file.
TraceMessage info (Int32 verbose_level) const
 Flow for an information message of a given level.
TraceMessage linfo () const
 Flow for an information message with the local information level of this instance.
TraceMessage linfo (Int32 relative_level) const
 Flow for an information message with the local information level of this instance.
void fatalMessage (const StandaloneTraceMessage &o) const

Private Member Functions

void _readVariablesData (VariableReaderMng &var_read_mng, IDataReaderWrapper *reader)
void _readMetaData (VariableMetaDataList &vmd_list, Span< const Byte > bytes)
 Reading metadata.
void _checkHashFunction (const VariableMetaDataList &vmd_list)
 Checks hash function values.
void _createVariablesFromMetaData (const VariableMetaDataList &vmd_list)
void _readVariablesMetaData (VariableMetaDataList &vmd_list, JSONValue variables_json, const XmlNode &variables_node)
void _readMeshesMetaData (JSONValue meshes_json, const XmlNode &meshes_node)
void _buildFilteredVariableList (VariableReaderMng &vars_read_mng, IVariableFilter *filter)
void _finalizeReadVariables (const VariableList &vars_to_read)

Static Private Member Functions

static const char * _msgClassName ()

Private Attributes

VariableMngm_variable_mng = nullptr
bool m_is_use_json_metadata = true

Additional Inherited Members

Protected Member Functions inherited from Arcane::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
Int32 _localVerboseLevel () const

Detailed Description

Reading management for variables.

Definition at line 334 of file VariableMng.h.

Constructor & Destructor Documentation

◆ VariableIOReaderMng()

Arcane::VariableIOReaderMng::VariableIOReaderMng ( VariableMng * vm)
explicit

Definition at line 378 of file VariableIOReaderMng.cc.

Member Function Documentation

◆ _buildFilteredVariableList()

void Arcane::VariableIOReaderMng::_buildFilteredVariableList ( VariableReaderMng & vars_read_mng,
IVariableFilter * filter )
private

Definition at line 867 of file VariableIOReaderMng.cc.

◆ _checkHashFunction()

void Arcane::VariableIOReaderMng::_checkHashFunction ( const VariableMetaDataList & vmd_list)
private

◆ _createVariablesFromMetaData()

void Arcane::VariableIOReaderMng::_createVariablesFromMetaData ( const VariableMetaDataList & vmd_list)
private

Definition at line 636 of file VariableIOReaderMng.cc.

◆ _finalizeReadVariables()

void Arcane::VariableIOReaderMng::_finalizeReadVariables ( const VariableList & vars_to_read)
private

Definition at line 897 of file VariableIOReaderMng.cc.

◆ _msgClassName()

const char * Arcane::VariableIOReaderMng::_msgClassName ( )
inlinestaticprivate

Definition at line 369 of file VariableMng.h.

◆ _readMeshesMetaData()

void Arcane::VariableIOReaderMng::_readMeshesMetaData ( JSONValue meshes_json,
const XmlNode & meshes_node )
private

Definition at line 796 of file VariableIOReaderMng.cc.

◆ _readMetaData()

void Arcane::VariableIOReaderMng::_readMetaData ( VariableMetaDataList & vmd_list,
Span< const Byte > bytes )
private

Reading metadata.

Assuming that meta_data is a valid XML file, it iterates through all the variables it contains and creates a reference to each one if they do not already exist.

If necessary, for each variable present in the metadata, it creates it if it does not already exist. Furthermore, it saves the name to ensure that the value of this variable will be read correctly.

Definition at line 495 of file VariableIOReaderMng.cc.

References ARCANE_FATAL, Arcane::String::bytes(), Arcane::JSONValue::child(), Arcane::XmlNode::child(), Arcane::JSONValue::expectedChild(), Arcane::PtrT< T >::get(), Arcane::TraceAccessor::info(), Arcane::IXmlDocumentHolder::loadFromBuffer(), Arcane::XmlNode::null(), Arcane::JSONDocument::parse(), Arcane::JSONDocument::root(), Arcane::TraceAccessor::traceMng(), Arcane::JSONValue::value(), Arcane::XmlNode::value(), and Arcane::JSONValue::valueAsInt32().

Here is the call graph for this function:

◆ _readVariablesData()

void Arcane::VariableIOReaderMng::_readVariablesData ( VariableReaderMng & var_read_mng,
IDataReaderWrapper * reader )
private

Definition at line 887 of file VariableIOReaderMng.cc.

◆ _readVariablesMetaData()

void Arcane::VariableIOReaderMng::_readVariablesMetaData ( VariableMetaDataList & vmd_list,
JSONValue variables_json,
const XmlNode & variables_node )
private

Definition at line 680 of file VariableIOReaderMng.cc.

◆ readCheckpoint() [1/2]

void Arcane::VariableIOReaderMng::readCheckpoint ( const CheckpointReadInfo & infos)

Definition at line 431 of file VariableIOReaderMng.cc.

◆ readCheckpoint() [2/2]

void Arcane::VariableIOReaderMng::readCheckpoint ( ICheckpointReader * service)

Definition at line 394 of file VariableIOReaderMng.cc.

◆ readVariables()

void Arcane::VariableIOReaderMng::readVariables ( IDataReader * reader,
IVariableFilter * filter )

Definition at line 471 of file VariableIOReaderMng.cc.

Member Data Documentation

◆ m_is_use_json_metadata

bool Arcane::VariableIOReaderMng::m_is_use_json_metadata = true
private

Definition at line 357 of file VariableMng.h.

◆ m_variable_mng

VariableMng* Arcane::VariableIOReaderMng::m_variable_mng = nullptr
private

Definition at line 356 of file VariableMng.h.


The documentation for this class was generated from the following files: