Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Materials::MeshMaterialModifierImpl Class Reference
Inheritance diagram for Arcane::Materials::MeshMaterialModifierImpl:
Collaboration diagram for Arcane::Materials::MeshMaterialModifierImpl:

Classes

class  OperationList

Public Member Functions

 MeshMaterialModifierImpl (MeshMaterialMng *mm)
void initOptimizationFlags ()
void setDoCopyBetweenPartialAndPure (bool v)
void setDoInitNewItems (bool v)
void setPersistantWorkBuffer (bool v)
void reset ()
void addCells (IMeshMaterial *mat, SmallSpan< const Int32 > ids)
void removeCells (IMeshMaterial *mat, SmallSpan< const Int32 > ids)
void endUpdate ()
 Applies the recorded operations.
void beginUpdate ()
void dumpStats ()
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 Types

using Operation = MaterialModifierOperation

Private Member Functions

void _addCellsToGroupDirect (IMeshMaterial *mat, SmallSpan< const Int32 > ids)
void _removeCellsToGroupDirect (IMeshMaterial *mat, SmallSpan< const Int32 > ids)
void _applyOperationsNoOptimize ()
void _updateEnvironmentsNoOptimize ()
bool _checkMayOptimize ()
void _endUpdate ()

Private Attributes

MeshMaterialMngm_material_mng = nullptr
OperationList m_operations
RunQueue m_queue
std::unique_ptr< IncrementalComponentModifierm_incremental_modifier
Int32 nb_update = 0
Int32 nb_save_restore = 0
Int32 nb_optimize_add = 0
Int32 nb_optimize_remove = 0
Int32 m_modification_id = 0
bool m_allow_optimization = false
bool m_allow_optimize_multiple_operation = false
bool m_allow_optimize_multiple_material = false
bool m_use_incremental_recompute = false
bool m_print_component_list = false
bool m_do_copy_between_partial_and_pure = true
bool m_do_init_new_items = true
bool m_is_keep_work_buffer = true
bool m_is_debug = false

Additional Inherited Members

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

Detailed Description

Definition at line 37 of file MeshMaterialModifierImpl.h.

Member Typedef Documentation

◆ Operation

using Arcane::Materials::MeshMaterialModifierImpl::Operation = MaterialModifierOperation
private

Definition at line 42 of file MeshMaterialModifierImpl.h.

Constructor & Destructor Documentation

◆ MeshMaterialModifierImpl()

Arcane::Materials::MeshMaterialModifierImpl::MeshMaterialModifierImpl ( MeshMaterialMng * mm)
explicit

Definition at line 76 of file MeshMaterialModifierImpl.cc.

Member Function Documentation

◆ _addCellsToGroupDirect()

void Arcane::Materials::MeshMaterialModifierImpl::_addCellsToGroupDirect ( IMeshMaterial * mat,
SmallSpan< const Int32 > ids )
private

Definition at line 153 of file MeshMaterialModifierImpl.cc.

◆ _applyOperationsNoOptimize()

void Arcane::Materials::MeshMaterialModifierImpl::_applyOperationsNoOptimize ( )
private

Definition at line 328 of file MeshMaterialModifierImpl.cc.

◆ _checkMayOptimize()

bool Arcane::Materials::MeshMaterialModifierImpl::_checkMayOptimize ( )
private

Definition at line 177 of file MeshMaterialModifierImpl.cc.

◆ _endUpdate()

void Arcane::Materials::MeshMaterialModifierImpl::_endUpdate ( )
private

Definition at line 221 of file MeshMaterialModifierImpl.cc.

◆ _removeCellsToGroupDirect()

void Arcane::Materials::MeshMaterialModifierImpl::_removeCellsToGroupDirect ( IMeshMaterial * mat,
SmallSpan< const Int32 > ids )
private

Definition at line 165 of file MeshMaterialModifierImpl.cc.

◆ _updateEnvironmentsNoOptimize()

void Arcane::Materials::MeshMaterialModifierImpl::_updateEnvironmentsNoOptimize ( )
private

Definition at line 344 of file MeshMaterialModifierImpl.cc.

◆ addCells()

void Arcane::Materials::MeshMaterialModifierImpl::addCells ( IMeshMaterial * mat,
SmallSpan< const Int32 > ids )

Definition at line 131 of file MeshMaterialModifierImpl.cc.

◆ beginUpdate()

void Arcane::Materials::MeshMaterialModifierImpl::beginUpdate ( )

Definition at line 415 of file MeshMaterialModifierImpl.cc.

◆ dumpStats()

void Arcane::Materials::MeshMaterialModifierImpl::dumpStats ( )

Definition at line 425 of file MeshMaterialModifierImpl.cc.

◆ endUpdate()

void Arcane::Materials::MeshMaterialModifierImpl::endUpdate ( )

Applies the recorded operations.

Definition at line 200 of file MeshMaterialModifierImpl.cc.

References Arcane::TraceAccessor::info().

Here is the call graph for this function:

◆ initOptimizationFlags()

void Arcane::Materials::MeshMaterialModifierImpl::initOptimizationFlags ( )

Definition at line 100 of file MeshMaterialModifierImpl.cc.

◆ removeCells()

void Arcane::Materials::MeshMaterialModifierImpl::removeCells ( IMeshMaterial * mat,
SmallSpan< const Int32 > ids )

Definition at line 142 of file MeshMaterialModifierImpl.cc.

◆ reset()

void Arcane::Materials::MeshMaterialModifierImpl::reset ( )

Definition at line 404 of file MeshMaterialModifierImpl.cc.

◆ setDoCopyBetweenPartialAndPure()

void Arcane::Materials::MeshMaterialModifierImpl::setDoCopyBetweenPartialAndPure ( bool v)
inline

Definition at line 68 of file MeshMaterialModifierImpl.h.

◆ setDoInitNewItems()

void Arcane::Materials::MeshMaterialModifierImpl::setDoInitNewItems ( bool v)
inline

Definition at line 69 of file MeshMaterialModifierImpl.h.

◆ setPersistantWorkBuffer()

void Arcane::Materials::MeshMaterialModifierImpl::setPersistantWorkBuffer ( bool v)
inline

Definition at line 70 of file MeshMaterialModifierImpl.h.

Member Data Documentation

◆ m_allow_optimization

bool Arcane::Materials::MeshMaterialModifierImpl::m_allow_optimization = false
private

Definition at line 105 of file MeshMaterialModifierImpl.h.

◆ m_allow_optimize_multiple_material

bool Arcane::Materials::MeshMaterialModifierImpl::m_allow_optimize_multiple_material = false
private

Definition at line 107 of file MeshMaterialModifierImpl.h.

◆ m_allow_optimize_multiple_operation

bool Arcane::Materials::MeshMaterialModifierImpl::m_allow_optimize_multiple_operation = false
private

Definition at line 106 of file MeshMaterialModifierImpl.h.

◆ m_do_copy_between_partial_and_pure

bool Arcane::Materials::MeshMaterialModifierImpl::m_do_copy_between_partial_and_pure = true
private

Definition at line 111 of file MeshMaterialModifierImpl.h.

◆ m_do_init_new_items

bool Arcane::Materials::MeshMaterialModifierImpl::m_do_init_new_items = true
private

Definition at line 112 of file MeshMaterialModifierImpl.h.

◆ m_incremental_modifier

std::unique_ptr<IncrementalComponentModifier> Arcane::Materials::MeshMaterialModifierImpl::m_incremental_modifier
private

Definition at line 97 of file MeshMaterialModifierImpl.h.

◆ m_is_debug

bool Arcane::Materials::MeshMaterialModifierImpl::m_is_debug = false
private

Definition at line 115 of file MeshMaterialModifierImpl.h.

◆ m_is_keep_work_buffer

bool Arcane::Materials::MeshMaterialModifierImpl::m_is_keep_work_buffer = true
private

Definition at line 113 of file MeshMaterialModifierImpl.h.

◆ m_material_mng

MeshMaterialMng* Arcane::Materials::MeshMaterialModifierImpl::m_material_mng = nullptr
private

Definition at line 94 of file MeshMaterialModifierImpl.h.

◆ m_modification_id

Int32 Arcane::Materials::MeshMaterialModifierImpl::m_modification_id = 0
private

Definition at line 103 of file MeshMaterialModifierImpl.h.

◆ m_operations

OperationList Arcane::Materials::MeshMaterialModifierImpl::m_operations
private

Definition at line 95 of file MeshMaterialModifierImpl.h.

◆ m_print_component_list

bool Arcane::Materials::MeshMaterialModifierImpl::m_print_component_list = false
private

Definition at line 109 of file MeshMaterialModifierImpl.h.

◆ m_queue

RunQueue Arcane::Materials::MeshMaterialModifierImpl::m_queue
private

Definition at line 96 of file MeshMaterialModifierImpl.h.

◆ m_use_incremental_recompute

bool Arcane::Materials::MeshMaterialModifierImpl::m_use_incremental_recompute = false
private

Definition at line 108 of file MeshMaterialModifierImpl.h.

◆ nb_optimize_add

Int32 Arcane::Materials::MeshMaterialModifierImpl::nb_optimize_add = 0
private

Definition at line 101 of file MeshMaterialModifierImpl.h.

◆ nb_optimize_remove

Int32 Arcane::Materials::MeshMaterialModifierImpl::nb_optimize_remove = 0
private

Definition at line 102 of file MeshMaterialModifierImpl.h.

◆ nb_save_restore

Int32 Arcane::Materials::MeshMaterialModifierImpl::nb_save_restore = 0
private

Definition at line 100 of file MeshMaterialModifierImpl.h.

◆ nb_update

Int32 Arcane::Materials::MeshMaterialModifierImpl::nb_update = 0
private

Definition at line 99 of file MeshMaterialModifierImpl.h.


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