Reading management for variables. More...
#include <arcane/impl/internal/VariableMng.h>
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. | |
| TraceAccessor & | operator= (const TraceAccessor &rhs) |
| Copy assignment operator. | |
| virtual | ~TraceAccessor () |
| Frees resources. | |
| ITraceMng * | traceMng () 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 | |
| VariableMng * | m_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 |
Reading management for variables.
Definition at line 334 of file VariableMng.h.
|
explicit |
Definition at line 378 of file VariableIOReaderMng.cc.
|
private |
Definition at line 867 of file VariableIOReaderMng.cc.
|
private |
Checks hash function values.
Checks for each variable that its value is correct by calculating its hash function and comparing it to the value in the protection. If a variable has a different value, it is written to the listing directory at the same level as the logs.
Definition at line 551 of file VariableIOReaderMng.cc.
References Arcane::IData::_commonInternal(), ARCANE_CHECK_POINTER, ARCANE_FATAL, Arcane::asBytes(), Arcane::Array< T >::clear(), Arcane::IParallelMng::commRank(), Arcane::IData::computeHash(), Arcane::IDataInternal::computeHash(), Arcane::SHA1HashAlgorithm::createContext(), Arcane::IData::createSerializedDataRef(), Arcane::IVariable::data(), Arcane::SpanImpl< T, SizeType, Extent >::data(), Arcane::String::empty(), Arcane::TraceAccessor::error(), Arcane::Directory::file(), Arcane::IVariable::fullName(), Arcane::RefImpl< InstanceType, RefClassType, ImplTagId >::get(), Arcane::platform::getEnvironmentVariable(), Arcane::VariableMetaData::hash(), Arcane::VariableMetaData::hash2(), Arcane::VariableMetaData::hashVersion(), Arcane::String::localstr(), Arcane::String::null(), Arcane::IParallelMng::reduce(), Arcane::MessagePassing::ReduceSum, Arcane::RefImpl< InstanceType, RefClassType, ImplTagId >::reset(), Arcane::SpanImpl< T, SizeType, Extent >::size(), and Arcane::Convert::toHexaString().
|
private |
Definition at line 636 of file VariableIOReaderMng.cc.
|
private |
Definition at line 897 of file VariableIOReaderMng.cc.
|
inlinestaticprivate |
Definition at line 369 of file VariableMng.h.
|
private |
Definition at line 796 of file VariableIOReaderMng.cc.
|
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().
|
private |
Definition at line 887 of file VariableIOReaderMng.cc.
|
private |
Definition at line 680 of file VariableIOReaderMng.cc.
| void Arcane::VariableIOReaderMng::readCheckpoint | ( | const CheckpointReadInfo & | infos | ) |
Definition at line 431 of file VariableIOReaderMng.cc.
| void Arcane::VariableIOReaderMng::readCheckpoint | ( | ICheckpointReader * | service | ) |
Definition at line 394 of file VariableIOReaderMng.cc.
| void Arcane::VariableIOReaderMng::readVariables | ( | IDataReader * | reader, |
| IVariableFilter * | filter ) |
Definition at line 471 of file VariableIOReaderMng.cc.
|
private |
Definition at line 357 of file VariableMng.h.
|
private |
Definition at line 356 of file VariableMng.h.