All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Functions
risc::sg Namespace Reference

Classes

class  CachedFunctionAstAttributes
 This class stores precached information of a analyzed function. Each function definition has an associated precached ast attribute. So, we store the beginning vertex and the leaving segments of a vertex. More...
 
class  CombinedDataConflictTable
 
class  ConflictTable
 
class  DataConflictAstAttributes
 This class should be used for the data conflict analysis. We can mark a SgVariableRef instance which has reading or writing access or is unused. More...
 
class  DataConflictTable
 This class represents the data conflict table among the individual segments. Two segments have a conflict if a least one variable is by the first segment and read by the second segment. A two dimensional array represents this array. More...
 
class  Edge
 
struct  EdgePropertyWriter
 
class  EventConflictTable
 The conflicts are stored in the base class variable conflict_table_. The columns represent wait statements of the segments. The rows are representing the notifications of events. So, a true in conflict_table_[i][j] means that the associated segment/instance i notifies the event for which the associated segment/instance j is waiting. More...
 
class  FunctionAnnotationAttributes
 This class provides attributes for function anotations. More...
 
class  OriginalDataAttribute
 
class  MappedDataAttribute
 
class  Tlm2ContainerOfMappedDataAttribute
 
class  MappedContainersOfContainerAttribute
 
class  DmiSocketAttribute
 
class  SocketMethodParameterReferenceAttribute
 
class  LeafNodeVisitor
 
class  BreakStmtVisitor
 
class  ContinueStmtVisitor
 
struct  GraphPropertyWriter
 
struct  MappedVariable
 This is a helper class to describe a variable in the design through the symbol and the instance id. More...
 
struct  Conflict
 This class represents a conflict in the data conflict table, either due to a conflicting expression (node_), or due to a conflicting variable with instance ID (variable_) (RD, 11/29/18) More...
 
class  PortCallAttribute
 This class stores for function calls. More...
 
class  PortCallPath
 
struct  SymbolWithPath
 
struct  NodeWithPath
 
class  PredictionEventNotificationTable
 
class  PredictionTimeAdvanceTable
 
class  FunctionParameterReferenceAttribute
 
class  LocalReferenceAttribute
 
class  Segment
 
class  SegmentCmp
 Function object (functor!?) for SegmentSet (12/15/18, RD) More...
 
class  SegmentGraph
 This class represents a segment graph for a process. More...
 
class  Time
 This class represents timing in discrete event simulation. More...
 
class  TimeAdvanceTable
 
struct  VertexPropertyWriter
 

Typedefs

typedef std::list< MappedVariableMappedVariableList
 
typedef boost::adjacency_list
< boost::listS, boost::listS,
boost::bidirectionalS, Segment,
Edge, boost::property
< boost::vertex_index_t, int > > 
Graph
 
typedef boost::graph_traits
< Graph >::vertex_descriptor 
VertexDescriptor
 
typedef boost::graph_traits
< Graph >::vertex_iterator 
VertexIterator
 
typedef boost::graph_traits
< Graph >::edge_descriptor 
EdgeDescriptor
 

Functions

std::list< int > get_all_reachable_segments (SegmentGraph &segment_graph, int starting_id)
 This function returns which segments are reachable from the given segment. More...
 
std::vector< VertexDescriptorget_all_reachable_segments (SegmentGraph &segment_graph, VertexDescriptor start_vertex)
 This function returns which segments are reachable from the given segment. More...
 
std::pair
< risc::sg::VertexDescriptor,
risc::sg::SegmentGraph::SegmentSet
clone_graph (risc::sg::VertexDescriptor start_vertex, risc::sg::SegmentGraph::SegmentSet leaving_vertices, risc::sg::SegmentGraph &sg, bool channel_segments)
 clones a subgraph More...
 
void add_pcp_to_graph (risc::sg::VertexDescriptor start_vertex, risc::sg::SegmentGraph &sg, SgFunctionCallExp *func_call_exp)
 add a style one pcp to all the segments starting from start_vertex More...
 
void add_pcp_to_graph (risc::sg::VertexDescriptor start_vertex, risc::sg::SegmentGraph &sg, SgVariableDefinition *socket_def)
 add a style two pcp to all the segments starting from start_vertex More...
 
const bool operator< (const MappedVariable &lhs, const MappedVariable &rhs)
 
void reset_inst_id_for_channels (MappedVariableList &mapped_variables)
 This function sets the instance id to 0 for all variables which are declared in a channel. More...
 
const bool operator< (const Conflict &lhs, const Conflict &rhs)
 
bool operator== (const PortCallPath &lhs, const PortCallPath &rhs)
 
bool operator< (const PortCallPath &lhs, const PortCallPath &rhs)
 
std::ostream & operator<< (std::ostream &os, const risc::sg::Time &time)
 

Typedef Documentation

typedef boost::graph_traits<Graph>::edge_descriptor risc::sg::EdgeDescriptor
typedef boost::adjacency_list<boost::listS, boost::listS, boost::bidirectionalS, Segment, Edge, boost::property<boost::vertex_index_t, int> > risc::sg::Graph
typedef boost::graph_traits<Graph>::vertex_descriptor risc::sg::VertexDescriptor
typedef boost::graph_traits<Graph>::vertex_iterator risc::sg::VertexIterator

Function Documentation

risc::sg::add_pcp_to_graph ( risc::sg::VertexDescriptor  start_vertex,
risc::sg::SegmentGraph sg,
SgFunctionCallExp *  func_call_exp 
)

add a style one pcp to all the segments starting from start_vertex

risc::sg::add_pcp_to_graph ( risc::sg::VertexDescriptor  start_vertex,
risc::sg::SegmentGraph sg,
SgVariableDefinition *  socket_def 
)

add a style two pcp to all the segments starting from start_vertex

risc::sg::clone_graph ( risc::sg::VertexDescriptor  start_vertex,
risc::sg::SegmentGraph::SegmentSet  leaving_vertices,
risc::sg::SegmentGraph sg,
bool  channel_segments 
)

clones a subgraph

risc::sg::get_all_reachable_segments ( SegmentGraph &  segment_graph,
int  starting_id 
)

This function returns which segments are reachable from the given segment.

risc::sg::get_all_reachable_segments ( SegmentGraph &  segment_graph,
VertexDescriptor  start_vertex 
)

This function returns which segments are reachable from the given segment.

bool risc::sg::operator< ( const PortCallPath &  lhs,
const PortCallPath &  rhs 
)
const bool risc::sg::operator< ( const MappedVariable &  lhs,
const MappedVariable &  rhs 
)
const bool risc::sg::operator< ( const Conflict &  lhs,
const Conflict &  rhs 
)
std::ostream & risc::sg::operator<< ( std::ostream &  os,
const risc::sg::Time time 
)
bool risc::sg::operator== ( const PortCallPath &  lhs,
const PortCallPath &  rhs 
)
risc::sg::reset_inst_id_for_channels ( MappedVariableList &  mapped_variables)

This function sets the instance id to 0 for all variables which are declared in a channel.