CGRA-ME
Public Member Functions | Public Attributes | Friends | List of all members
OpGraphVal Class Reference

#include <OpGraph.h>

Inheritance diagram for OpGraphVal:
OpGraphNode

Public Member Functions

 OpGraphVal (std::string name, int bitwidth, int dist=0, EdgeKind ek=EdgeKind::kDataFlow)
 
 OpGraphVal (std::string name, int bitwidth, OpGraphOp *input_op, int dist=0, EdgeKind ek=EdgeKind::kDataFlow)
 
 ~OpGraphVal ()
 
 OpGraphVal (const OpGraphVal &)=delete
 
 OpGraphVal (OpGraphVal &&)=default
 
OpGraphValoperator= (const OpGraphVal &)=delete
 
OpGraphValoperator= (OpGraphVal &)=default
 
std::string getOperandForOutput (const OpGraphOp *)
 
bool getPredicateForOutput (const OpGraphOp *)
 
EdgeKind getKind ()
 
bool operator== (const OpGraphVal &rhs) const
 
bool operator!= (const OpGraphVal &rhs) const
 
- Public Member Functions inherited from OpGraphNode
 OpGraphNode (std::string name)
 
virtual ~OpGraphNode ()
 
const std::string & getName () const
 
bool operator== (const OpGraphNode &rhs) const
 
bool operator!= (const OpGraphNode &rhs) const
 

Public Attributes

OpGraphOpinput
 
EdgeKind kind
 
std::vector< OpGraphOp * > output
 
std::vector< std::string > output_operand
 
int dist = 0
 
int bitwidth = 0
 
std::vector< bool > output_predicate
 
- Public Attributes inherited from OpGraphNode
std::string name
 

Friends

std::ostream & operator<< (std::ostream &output, const OpGraphVal &val)
 

Detailed Description

Definition at line 178 of file OpGraph.h.

Constructor & Destructor Documentation

◆ OpGraphVal() [1/4]

OpGraphVal::OpGraphVal ( std::string  name,
int  bitwidth,
int  dist = 0,
EdgeKind  ek = EdgeKind::kDataFlow 
)

Definition at line 252 of file OpGraph.cpp.

◆ OpGraphVal() [2/4]

OpGraphVal::OpGraphVal ( std::string  name,
int  bitwidth,
OpGraphOp input_op,
int  dist = 0,
EdgeKind  ek = EdgeKind::kDataFlow 
)

Definition at line 261 of file OpGraph.cpp.

◆ ~OpGraphVal()

OpGraphVal::~OpGraphVal ( )

Definition at line 268 of file OpGraph.cpp.

◆ OpGraphVal() [3/4]

OpGraphVal::OpGraphVal ( const OpGraphVal )
delete

◆ OpGraphVal() [4/4]

OpGraphVal::OpGraphVal ( OpGraphVal &&  )
default

Member Function Documentation

◆ getKind()

EdgeKind OpGraphVal::getKind ( )
inline

Definition at line 193 of file OpGraph.h.

◆ getOperandForOutput()

std::string OpGraphVal::getOperandForOutput ( const OpGraphOp op)

Definition at line 270 of file OpGraph.cpp.

◆ getPredicateForOutput()

bool OpGraphVal::getPredicateForOutput ( const OpGraphOp op)

Definition at line 276 of file OpGraph.cpp.

◆ operator!=()

bool OpGraphVal::operator!= ( const OpGraphVal rhs) const
inline

Definition at line 209 of file OpGraph.h.

◆ operator=() [1/2]

OpGraphVal& OpGraphVal::operator= ( const OpGraphVal )
delete

◆ operator=() [2/2]

OpGraphVal& OpGraphVal::operator= ( OpGraphVal )
default

◆ operator==()

bool OpGraphVal::operator== ( const OpGraphVal rhs) const
inline

Definition at line 206 of file OpGraph.h.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  output,
const OpGraphVal val 
)
friend

Definition at line 565 of file OpGraph.cpp.

Member Data Documentation

◆ bitwidth

int OpGraphVal::bitwidth = 0

Definition at line 200 of file OpGraph.h.

◆ dist

int OpGraphVal::dist = 0

Definition at line 199 of file OpGraph.h.

◆ input

OpGraphOp* OpGraphVal::input

Definition at line 190 of file OpGraph.h.

◆ kind

EdgeKind OpGraphVal::kind

Definition at line 194 of file OpGraph.h.

◆ output

std::vector<OpGraphOp*> OpGraphVal::output

Definition at line 196 of file OpGraph.h.

◆ output_operand

std::vector<std::string> OpGraphVal::output_operand

Definition at line 198 of file OpGraph.h.

◆ output_predicate

std::vector<bool> OpGraphVal::output_predicate

Definition at line 201 of file OpGraph.h.


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