SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
smtrat::cad::Origin Class Reference

This class represents one or more origins of some object. More...

#include <Origin.h>

Collaboration diagram for smtrat::cad::Origin:

Data Structures

struct  BaseType
 

Public Member Functions

 Origin ()
 
 Origin (const Origin &po)
 
 Origin (Origin &&po)
 
 Origin (std::size_t level, std::size_t id)
 
 Origin (const BaseType &bt)
 
auto begin () const
 
auto end () const
 
bool isActive () const
 
void deactivate (std::size_t level, const carl::Bitset &rhs)
 
void deactivateEC (std::size_t level, const carl::Bitset &rhs)
 
void activate (std::size_t level, const carl::Bitset &rhs)
 
void activateEC (std::size_t level, const carl::Bitset &rhs)
 
Originoperator= (const Origin &rhs)
 
Originoperator= (Origin &&rhs)
 
bool empty () const
 
bool operator== (const Origin &rhs) const
 
Originoperator+= (const BaseType &rhs)
 Adds the pair to the origins. More...
 
Originoperator-= (const BaseType &rhs)
 Removes the pair from the origins. More...
 
Originerase (std::size_t level, const carl::Bitset &rhs)
 
Origin operator| (const Origin &rhs) const
 

Private Member Functions

void makeUnique ()
 
template<typename F >
void removeFiltered (F &&f)
 

Private Attributes

std::vector< BaseTypemData
 

Friends

std::ostream & operator<< (std::ostream &os, const Origin &po)
 

Detailed Description

This class represents one or more origins of some object.

An origin is a single id or a pair of ids (where a single id is represented as a pair of the same id).

As an object can have multiple origins, this class stores a list of such pairs. This class makes sure that the pairs are unique.

Definition at line 21 of file Origin.h.

Constructor & Destructor Documentation

◆ Origin() [1/5]

smtrat::cad::Origin::Origin ( )
inline

Definition at line 72 of file Origin.h.

◆ Origin() [2/5]

smtrat::cad::Origin::Origin ( const Origin po)
inline

Definition at line 73 of file Origin.h.

◆ Origin() [3/5]

smtrat::cad::Origin::Origin ( Origin &&  po)
inline

Definition at line 74 of file Origin.h.

◆ Origin() [4/5]

smtrat::cad::Origin::Origin ( std::size_t  level,
std::size_t  id 
)
inlineexplicit

Definition at line 76 of file Origin.h.

◆ Origin() [5/5]

smtrat::cad::Origin::Origin ( const BaseType bt)
inlineexplicit

Definition at line 77 of file Origin.h.

Member Function Documentation

◆ activate()

void smtrat::cad::Origin::activate ( std::size_t  level,
const carl::Bitset &  rhs 
)
inline

Definition at line 111 of file Origin.h.

◆ activateEC()

void smtrat::cad::Origin::activateEC ( std::size_t  level,
const carl::Bitset &  rhs 
)
inline

Definition at line 119 of file Origin.h.

◆ begin()

auto smtrat::cad::Origin::begin ( ) const
inline

Definition at line 79 of file Origin.h.

◆ deactivate()

void smtrat::cad::Origin::deactivate ( std::size_t  level,
const carl::Bitset &  rhs 
)
inline

Definition at line 94 of file Origin.h.

◆ deactivateEC()

void smtrat::cad::Origin::deactivateEC ( std::size_t  level,
const carl::Bitset &  rhs 
)
inline

Definition at line 102 of file Origin.h.

◆ empty()

bool smtrat::cad::Origin::empty ( ) const
inline

Definition at line 136 of file Origin.h.

◆ end()

auto smtrat::cad::Origin::end ( ) const
inline

Definition at line 82 of file Origin.h.

◆ erase()

Origin& smtrat::cad::Origin::erase ( std::size_t  level,
const carl::Bitset &  rhs 
)
inline

Definition at line 154 of file Origin.h.

Here is the call graph for this function:

◆ isActive()

bool smtrat::cad::Origin::isActive ( ) const
inline

Definition at line 87 of file Origin.h.

◆ makeUnique()

void smtrat::cad::Origin::makeUnique ( )
inlineprivate

Definition at line 61 of file Origin.h.

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

◆ operator+=()

Origin& smtrat::cad::Origin::operator+= ( const BaseType rhs)
inline

Adds the pair to the origins.

Definition at line 144 of file Origin.h.

Here is the call graph for this function:

◆ operator-=()

Origin& smtrat::cad::Origin::operator-= ( const BaseType rhs)
inline

Removes the pair from the origins.

Definition at line 150 of file Origin.h.

Here is the call graph for this function:

◆ operator=() [1/2]

Origin& smtrat::cad::Origin::operator= ( const Origin rhs)
inline

Definition at line 127 of file Origin.h.

◆ operator=() [2/2]

Origin& smtrat::cad::Origin::operator= ( Origin &&  rhs)
inline

Definition at line 131 of file Origin.h.

◆ operator==()

bool smtrat::cad::Origin::operator== ( const Origin rhs) const
inline

Definition at line 140 of file Origin.h.

◆ operator|()

Origin smtrat::cad::Origin::operator| ( const Origin rhs) const
inline

Definition at line 159 of file Origin.h.

Here is the call graph for this function:

◆ removeFiltered()

template<typename F >
void smtrat::cad::Origin::removeFiltered ( F &&  f)
inlineprivate

Definition at line 66 of file Origin.h.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const Origin po 
)
friend

Definition at line 166 of file Origin.h.

Field Documentation

◆ mData

std::vector<BaseType> smtrat::cad::Origin::mData
private

Definition at line 59 of file Origin.h.


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