Predator  [unstable] git snapshot
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
AbstractionNode Class Reference

a trace graph node that represents a single abstraction step More...

#include <symtrace.hh>

Inheritance diagram for AbstractionNode:
Inheritance graph
[legend]
Collaboration diagram for AbstractionNode:
Collaboration graph
[legend]

Public Types

typedef std::vector< NodeBase * > TBaseList
 used to store a list of child nodes

Public Member Functions

 AbstractionNode (Node *ref, EObjKind kind)
void setPlotName (const std::string &name)
const TBaseListchildren () const
 reference to list of child nodes (containing 0..n pointers)
virtual NodeprintNode () const
 print the node in a human-readable format if considered interesting
TIdMapperListidMapperList ()
 return the ID mapping describing the operation behind the trace node
const TIdMapperListidMapperList () const
 return the ID mapping describing the operation behind the trace node
TIdMapperidMapper ()
 return the ID mapping describing the operation behind the trace node
const TIdMapperidMapper () const
 return the ID mapping describing the operation behind the trace node
virtual Nodeparent () const
 this can be called only on nodes with exactly one parent
const TNodeListparents () const
 reference to list of parents (containing 0..n pointers)

Protected Member Functions

virtual void plotNode (TracePlotter &) const
 serialize this node to the given plot (externally not much useful)

Protected Attributes

TIdMapperList idMapperList_
TNodeList parents_
 list of all (0..n) parent nodes

Private Attributes

const EObjKind kind_
std::string name_

Detailed Description

a trace graph node that represents a single abstraction step

Definition at line 309 of file symtrace.hh.

Member Typedef Documentation

typedef std::vector<NodeBase *> TBaseList
inherited

used to store a list of child nodes

Definition at line 144 of file symtrace.hh.

Constructor & Destructor Documentation

AbstractionNode ( Node ref,
EObjKind  kind 
)
inline
Parameters
refa trace leading to this abstraction step
kindthe kind of abstraction step being performed

Definition at line 319 of file symtrace.hh.

Member Function Documentation

const TBaseList& children ( ) const
inlineinherited

reference to list of child nodes (containing 0..n pointers)

Definition at line 147 of file symtrace.hh.

References Node::children_.

TIdMapper& idMapper ( )
inherited

return the ID mapping describing the operation behind the trace node

Referenced by CondNode::CondNode(), InsnNode::InsnNode(), MsgNode::MsgNode(), SpliceOutNode::SpliceOutNode(), and UserNode::UserNode().

const TIdMapper& idMapper ( ) const
inherited

return the ID mapping describing the operation behind the trace node

TIdMapperList& idMapperList ( )
inherited

return the ID mapping describing the operation behind the trace node

const TIdMapperList& idMapperList ( ) const
inherited

return the ID mapping describing the operation behind the trace node

virtual Node* parent ( ) const
virtualinherited

this can be called only on nodes with exactly one parent

Reimplemented in JoinNode.

Referenced by NodeHandle::node(), NodeHandle::NodeHandle(), and Node::printNode().

const TNodeList& parents ( ) const
inlineinherited

reference to list of parents (containing 0..n pointers)

Definition at line 89 of file symtrace.hh.

References NodeBase::parents_.

virtual void plotNode ( TracePlotter &  ) const
protectedvirtual

serialize this node to the given plot (externally not much useful)

Implements Node.

virtual Node* printNode ( ) const
inlinevirtualinherited

print the node in a human-readable format if considered interesting

Reimplemented in UserNode, CallDoneNode, CallFrameNode, CallCacheHitNode, CallEntryNode, CloneNode, JoinNode, CondNode, InsnNode, RootNode, and TransientNode.

Definition at line 150 of file symtrace.hh.

References NodeBase::parent().

void setPlotName ( const std::string &  name)
inline
Parameters
namename of the corresponding debug plot (empty if unused)

Definition at line 326 of file symtrace.hh.

References AbstractionNode::name_.

Field Documentation

TIdMapperList idMapperList_
protectedinherited

Definition at line 173 of file symtrace.hh.

Referenced by JoinNode::JoinNode(), and Node::Node().

const EObjKind kind_
private

Definition at line 311 of file symtrace.hh.

std::string name_
private

Definition at line 312 of file symtrace.hh.

Referenced by AbstractionNode::setPlotName().

TNodeList parents_
protectedinherited

list of all (0..n) parent nodes

Definition at line 70 of file symtrace.hh.

Referenced by Node::Node(), and NodeBase::parents().


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