AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::lumberjack::Combiner Class Referenceabstract

Abstract base class defining the interface of all Combiner classes. More...

#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/develop/src/axom/lumberjack/Combiner.hpp>

Inheritance diagram for axom::lumberjack::Combiner:

Public Member Functions

virtual ~Combiner ()
 Virtual destructor. More...
 
virtual const std::string id ()=0
 Returns the unique string identifier for this combiner. Used by Lumberjack to differentiate between other combiners. More...
 
virtual bool shouldMessagesBeCombined (const Message &leftMessage, const Message &rightMessage)=0
 Function used by Lumberjack to indicate whether two Message classes should be combined. They are not actually combined by this function. More...
 
virtual void combine (Message &combined, const Message &combinee, const int ranksLimit)=0
 Combines the combinee into the combined Message. More...
 

Detailed Description

Abstract base class defining the interface of all Combiner classes.

Concrete instances need to inherit from this class and implement these functions. You will need to add your Combiner using Lumberjack::addCombiner

See also
MessageEqualityCombiner Lumberjack

Constructor & Destructor Documentation

◆ ~Combiner()

virtual axom::lumberjack::Combiner::~Combiner ( )
inlinevirtual

Virtual destructor.

Member Function Documentation

◆ id()

virtual const std::string axom::lumberjack::Combiner::id ( )
pure virtual

Returns the unique string identifier for this combiner. Used by Lumberjack to differentiate between other combiners.

Implemented in axom::lumberjack::TextTagCombiner, and axom::lumberjack::TextEqualityCombiner.

◆ shouldMessagesBeCombined()

virtual bool axom::lumberjack::Combiner::shouldMessagesBeCombined ( const Message leftMessage,
const Message rightMessage 
)
pure virtual

Function used by Lumberjack to indicate whether two Message classes should be combined. They are not actually combined by this function.

Parameters
[in]leftMessageThe left Message to be compared.
[in]rightMessageThe right Message to be compared.

Implemented in axom::lumberjack::TextTagCombiner, and axom::lumberjack::TextEqualityCombiner.

◆ combine()

virtual void axom::lumberjack::Combiner::combine ( Message combined,
const Message combinee,
const int  ranksLimit 
)
pure virtual

Combines the combinee into the combined Message.

Parameters
[in,out]combinedthe Message that will be modified.
[in]combineethe Message that is combined into the other.
[in]ranksLimitlimit on how many individual ranks are tracked in combined Messages. Message::rankCount is always incremented.

Implemented in axom::lumberjack::TextTagCombiner, and axom::lumberjack::TextEqualityCombiner.


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