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

Property Manager. More...

Inheritance diagram for Arcane::PropertyMng:
Collaboration diagram for Arcane::PropertyMng:

Public Member Functions

 PropertyMng (ITraceMng *tm)
void build ()
ITraceMngtraceMng () const override
PropertiesImplgetPropertiesImpl (const String &full_name) override
 Retrieves the list of properties by full name full_name.
void destroyProperties (const Properties &p) override
 Deletes the properties referenced by p.
void registerProperties (const Properties &p) override
 Registers the properties referenced by p.
void serialize (ISerializer *serializer) override
 Performs serialization.
void writeTo (ByteArray &bytes) override
 Serializes property information into bytes.
void readFrom (Span< const Byte > bytes) override
 Reads the serialized information contained in bytes.
void print (std::ostream &o) const override
 Displays the properties and their values on the stream o.
IObservablewriteObservable () override
 Observable for writing.
IObservablereadObservable () override
 Observable for reading.
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
Public Member Functions inherited from Arcane::IPropertyMng
virtual ~IPropertyMng ()
 Frees the resources.

Static Public Attributes

static const Int32 SERIALIZE_VERSION = 1

Private Types

typedef std::map< String, PropertiesPropertiesMapType

Private Attributes

PropertiesMapType m_properties_map
VariableArrayBytem_property_values_var
AutoDetachObservable m_write_observable
AutoDetachObservable m_read_observable

Additional Inherited Members

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

Detailed Description

Property Manager.

Definition at line 39 of file PropertyMng.cc.

Member Typedef Documentation

◆ PropertiesMapType

typedef std::map<String, Properties> Arcane::PropertyMng::PropertiesMapType
private

Definition at line 75 of file PropertyMng.cc.

Constructor & Destructor Documentation

◆ PropertyMng()

Arcane::PropertyMng::PropertyMng ( ITraceMng * tm)
explicit

Definition at line 107 of file PropertyMng.cc.

◆ ~PropertyMng()

Arcane::PropertyMng::~PropertyMng ( )
override

Definition at line 117 of file PropertyMng.cc.

Member Function Documentation

◆ build()

void Arcane::PropertyMng::build ( )

Definition at line 129 of file PropertyMng.cc.

◆ destroyProperties()

void Arcane::PropertyMng::destroyProperties ( const Properties & p)
overridevirtual

Deletes the properties referenced by p.

Implements Arcane::IPropertyMng.

Definition at line 160 of file PropertyMng.cc.

References Arcane::Properties::fullName().

Here is the call graph for this function:

◆ getPropertiesImpl()

PropertiesImpl * Arcane::PropertyMng::getPropertiesImpl ( const String & full_name)
overridevirtual

Retrieves the list of properties by full name full_name.

This method must only be called by the Properties class. To retrieve an instance, the Properties constructor must be used.

Implements Arcane::IPropertyMng.

Definition at line 137 of file PropertyMng.cc.

◆ print()

void Arcane::PropertyMng::print ( std::ostream & o) const
overridevirtual

Displays the properties and their values on the stream o.

Implements Arcane::IPropertyMng.

Definition at line 264 of file PropertyMng.cc.

References Arcane::Properties::fullName(), and Arcane::Properties::print().

Here is the call graph for this function:

◆ readFrom()

void Arcane::PropertyMng::readFrom ( Span< const Byte > bytes)
overridevirtual

Reads the serialized information contained in bytes.

The bytes array must have been created by a call to writeTo().

Implements Arcane::IPropertyMng.

Definition at line 245 of file PropertyMng.cc.

References Arcane::TraceAccessor::info(), Arcane::BasicSerializer::initFromBuffer(), serialize(), and Arcane::BasicSerializer::setSerializeTypeInfo().

Here is the call graph for this function:

◆ readObservable()

IObservable * Arcane::PropertyMng::readObservable ( )
inlineoverridevirtual

Observable for reading.

The observers registered in this observable are called at the end of readFrom().

Implements Arcane::IPropertyMng.

Definition at line 70 of file PropertyMng.cc.

◆ registerProperties()

void Arcane::PropertyMng::registerProperties ( const Properties & p)
overridevirtual

Registers the properties referenced by p.

Implements Arcane::IPropertyMng.

Definition at line 150 of file PropertyMng.cc.

References Arcane::Properties::fullName().

Here is the call graph for this function:

◆ serialize()

void Arcane::PropertyMng::serialize ( ISerializer * serializer)
overridevirtual

Performs serialization.

Implements Arcane::IPropertyMng.

Definition at line 171 of file PropertyMng.cc.

References Arcane::ISerializer::get(), Arcane::ISerializer::getInt32(), Arcane::ISerializer::getInt64(), Arcane::ISerializer::mode(), Arcane::ISerializer::ModeGet, Arcane::ISerializer::ModePut, Arcane::ISerializer::put(), Arcane::ISerializer::putInt32(), Arcane::ISerializer::putInt64(), Arcane::TraceAccessor::pwarning(), Arcane::ISerializer::reserve(), Arcane::ISerializer::reserveInt32(), Arcane::ISerializer::reserveInt64(), and Arcane::Properties::serialize().

Referenced by readFrom(), and writeTo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ traceMng()

ITraceMng * Arcane::PropertyMng::traceMng ( ) const
inlineoverridevirtual

Implements Arcane::IPropertyMng.

Definition at line 58 of file PropertyMng.cc.

◆ writeObservable()

IObservable * Arcane::PropertyMng::writeObservable ( )
inlineoverridevirtual

Observable for writing.

The observers registered in this observable are called at the beginning of writeTo().

Implements Arcane::IPropertyMng.

Definition at line 69 of file PropertyMng.cc.

◆ writeTo()

void Arcane::PropertyMng::writeTo ( ByteArray & bytes)
overridevirtual

Serializes property information into bytes.

Implements Arcane::IPropertyMng.

Definition at line 224 of file PropertyMng.cc.

References Arcane::BasicSerializer::allocateBuffer(), Arcane::TraceAccessor::info(), Arcane::ISerializer::ModePut, serialize(), Arcane::BasicSerializer::setMode(), Arcane::BasicSerializer::setSerializeTypeInfo(), and Arcane::SpanImpl< T, SizeType, Extent >::size().

Here is the call graph for this function:

Member Data Documentation

◆ m_properties_map

PropertiesMapType Arcane::PropertyMng::m_properties_map
private

Definition at line 77 of file PropertyMng.cc.

◆ m_property_values_var

VariableArrayByte* Arcane::PropertyMng::m_property_values_var
private

Definition at line 78 of file PropertyMng.cc.

◆ m_read_observable

AutoDetachObservable Arcane::PropertyMng::m_read_observable
private

Definition at line 80 of file PropertyMng.cc.

◆ m_write_observable

AutoDetachObservable Arcane::PropertyMng::m_write_observable
private

Definition at line 79 of file PropertyMng.cc.

◆ SERIALIZE_VERSION

const Int32 Arcane::PropertyMng::SERIALIZE_VERSION = 1
static

Definition at line 45 of file PropertyMng.cc.


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