irafhy
Interval arithmetic based Reachability Analysis Framework for Hybrid Automaton
irafhy::BinaryItem Class Reference

#include <binaryItem.h>

Collaboration diagram for irafhy::BinaryItem:
Collaboration graph

Public Member Functions

 BinaryItem ()=default
 constructor More...
 
 BinaryItem (const Item &lhsOperand, const Item &rhsOperand, const BINARY &binaryOperator)
 constructor with given operands and operator More...
 
 ~BinaryItem ()=default
 destructor More...
 
std::function< capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> arithmetic () const
 get the arithmetic function of the binary item More...
 
capd::interval value (const capd::interval &t, const std::vector< capd::interval > &in, const std::vector< capd::interval > &params)
 get the value of the current binary item More...
 

Private Attributes

std::shared_ptr< ItemlhsOperand_
 pointer to the left hand side operand More...
 
std::shared_ptr< ItemrhsOperand_
 pointer to the right hand side operand More...
 
BINARY operator_
 what kind of operation of the binary item indicates More...
 

Friends

std::ostream & operator<< (std::ostream &out, const BinaryItem &rhs)
 out the given binary item to standard out stream More...
 

Constructor & Destructor Documentation

◆ BinaryItem() [1/2]

irafhy::BinaryItem::BinaryItem ( )
default

constructor

◆ BinaryItem() [2/2]

irafhy::BinaryItem::BinaryItem ( const Item lhsOperand,
const Item rhsOperand,
const BINARY binaryOperator 
)

constructor with given operands and operator

Parameters
lhsOperandleft hand side operand
rhsOperandright hand side operand
binaryOperatorgiven operator

References lhsOperand_, operator_, and rhsOperand_.

◆ ~BinaryItem()

irafhy::BinaryItem::~BinaryItem ( )
default

destructor

Member Function Documentation

◆ arithmetic()

std::function< capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> irafhy::BinaryItem::arithmetic ( ) const

get the arithmetic function of the binary item

Returns
the arithmetic function of the binary item

References irafhy::DIVIDE, lhsOperand_, irafhy::MINUS, irafhy::MULTIPLY, operator_, irafhy::PLUS, irafhy::POWER, and rhsOperand_.

◆ value()

capd::interval irafhy::BinaryItem::value ( const capd::interval &  t,
const std::vector< capd::interval > &  in,
const std::vector< capd::interval > &  params 
)

get the value of the current binary item

Parameters
ttime variable
invalues of the given variables
paramsother necessary parameters
Returns
the value of the current binary item

References irafhy::DIVIDE, lhsOperand_, irafhy::MINUS, irafhy::MULTIPLY, operator_, irafhy::PLUS, irafhy::POWER, and rhsOperand_.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const BinaryItem rhs 
)
friend

out the given binary item to standard out stream

Parameters
outgiven out stream
rhsgiven binary item
Returns
resulting out stream

Member Data Documentation

◆ lhsOperand_

std::shared_ptr<Item> irafhy::BinaryItem::lhsOperand_
private

pointer to the left hand side operand

Referenced by arithmetic(), BinaryItem(), irafhy::operator<<(), and value().

◆ operator_

BINARY irafhy::BinaryItem::operator_
private

what kind of operation of the binary item indicates

Referenced by arithmetic(), BinaryItem(), irafhy::operator<<(), and value().

◆ rhsOperand_

std::shared_ptr<Item> irafhy::BinaryItem::rhsOperand_
private

pointer to the right hand side operand

Referenced by arithmetic(), BinaryItem(), irafhy::operator<<(), and value().


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