Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
IBlockProxy Class Referenceabstract

Abstract interface for block inspection and logging. More...

#include <IBlockProxy.h>

Inheritance diagram for IBlockProxy:

Public Member Functions

virtual ~IBlockProxy ()=default
 
virtual bool exists (const std::string &blockname, ParameterType pt)=0
 Checks whether a block exists for a given ParameterType.
 
virtual void log_all_blocks (ParameterType pt)=0
 Logs all blocks for a given ParameterType.
 
virtual void log_block (ParameterType pt, const std::string &blockname)=0
 Logs the content of a single block for a given ParameterType.
 
virtual std::unordered_set< BlockNameget_block_list (ParameterType pt)=0
 Retrieves the list of block names for a given ParameterType.
 
virtual std::map< LhaID, scalar_tget_block (ParameterType pt, const std::string &blockname)=0
 Retrieves the content of the block names for a given ParameterType.
 

Detailed Description

Abstract interface for block inspection and logging.

IBlockProxy defines the contract for classes that expose block-level diagnostics for Hyperiso models. It provides:

  • existence checks for blocks,
  • logging of blocks or full parameter sets,
  • retrieval of block name lists.

This interface is intended to be used by higher-level components that need read-only introspection and diagnostics without direct access to Parameters or MemoryManager.

Definition at line 49 of file IBlockProxy.h.

Constructor & Destructor Documentation

◆ ~IBlockProxy()

virtual IBlockProxy::~IBlockProxy ( )
virtualdefault

Member Function Documentation

◆ exists()

virtual bool IBlockProxy::exists ( const std::string &  blockname,
ParameterType  pt 
)
pure virtual

Checks whether a block exists for a given ParameterType.

Parameters
blocknameName of the block to check.
ptParameterType to query.
Returns
true if the block exists, false otherwise.

Implemented in BlockProxy.

◆ get_block()

virtual std::map< LhaID, scalar_t > IBlockProxy::get_block ( ParameterType  pt,
const std::string &  blockname 
)
pure virtual

Retrieves the content of the block names for a given ParameterType.

Parameters
ptParameterType to query.
blocknameName of the block.
Returns
map of block content.

Implemented in BlockProxy.

◆ get_block_list()

virtual std::unordered_set< BlockName > IBlockProxy::get_block_list ( ParameterType  pt)
pure virtual

Retrieves the list of block names for a given ParameterType.

Parameters
ptParameterType to query.
Returns
Unordered set of block names.

Implemented in BlockProxy.

◆ log_all_blocks()

virtual void IBlockProxy::log_all_blocks ( ParameterType  pt)
pure virtual

Logs all blocks for a given ParameterType.

Implementations typically delegate to a lower-level logging facility (e.g. BlockProvider or Parameters), which prints the full content of the associated block accessor.

Parameters
ptParameterType whose blocks should be logged.

Implemented in BlockProxy.

◆ log_block()

virtual void IBlockProxy::log_block ( ParameterType  pt,
const std::string &  blockname 
)
pure virtual

Logs the content of a single block for a given ParameterType.

Implementations are expected to rely on the underlying block storage (e.g. Parameters::print_block), which streams the block content using the operator<< overload for std::shared_ptr<BlockAccessor>.

Parameters
ptParameterType owning the block.
blocknameName of the block to log.

Implemented in BlockProxy.


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