Skip to content

scram::core::ProductContainer

A container of analysis result products with Literals. More...

#include <fault_tree_analysis.h>

Public Functions

Name
Iteratorbegin() const<br>Begin and end iterators over products in the container.
Iteratorend() const
ProductContainer(const Zbdd & products, const Pdag & graph, const ProductSummary * summary =nullptr, std::shared_ptr< const ProductList > filtered_products =nullptr)<br>The constructor also collects basic events in products.
const std::vector< const mef::BasicEvent * > &product_events() const
const Pdag &graph() const
boolempty() const
intsize() const
const std::vector< int > &distribution() const

Detailed Description

cpp
class scram::core::ProductContainer;

A container of analysis result products with Literals.

This is a wrapper of the analysis resultant ZBDD to work with Literals.

Public Functions Documentation

function begin

cpp
Iterator begin() const

Begin and end iterators over products in the container.

function end

cpp
Iterator end() const

function ProductContainer

cpp
ProductContainer(
    const Zbdd & products,
    const Pdag & graph,
    const ProductSummary * summary =nullptr,
    std::shared_ptr< const ProductList > filtered_products =nullptr
)

The constructor also collects basic events in products.

Parameters:

  • products Sets with indices of events from calculations.
  • graph PDAG with basic event indices and pointers.

function product_events

cpp
inline const std::vector< const mef::BasicEvent * > & product_events() const

Return: Collection of basic events that are in the products.

function graph

cpp
inline const Pdag & graph() const

Return: The underlying PDAG used for product indexing.

This enables serializers/reporters to emit a stable BasicEvent -> index map for later deserialization of compact cut set encodings.

function empty

cpp
inline bool empty() const

Return: true if no products in the container.

function size

cpp
inline int size() const

Return: The number of products in the container.

function distribution

cpp
inline const std::vector< int > & distribution() const

Return: The product distribution by order.


Updated on 2026-01-09 at 21:59:11 +0000