risc::InstanceTree Class Reference

#include <instance_tree.h>

List of all members.

Classes

struct  Element

Public Types

enum  VariableType {
  ModuleInstance, PrimitiveChannelInstance, HierarchicalChannelInstance, EventInstance,
  VariableInstance, PortInstance
}
 

These are the kind for of variables for which a traversal can search.

More...
typedef std::list< ElementPath

Public Member Functions

 InstanceTree ()
 InstanceTree (const InstanceTree &other)
InstanceTree get_real_mapped_variable ()
 This function returns mapped variables for a reference. If the mapped variable is a global variable, the first scope pointer will be NULL.
std::list< InstanceTreefind_all_instances_of (SgVariableDefinition *var_def)
InstanceTree get_parent ()
 This function returns the parent variable of variable.
void print_instance_tree ()
 Prints the instance tree.
Classget_scope ()
 returns the scope of the object
Objectget_object ()
 returns the object
SgVariableSymbol * get_object_symbol ()
 returns the symbol of the object
void get_all_ports (std::list< InstanceTree > &occurence)
void get_all_events (std::list< InstanceTree > &occurence)
Element pop_back ()
 Deletes the last element in the instance tree.
void push_back (Element ohs)
void get_instance_tree (SgVariableDefinition *var_def, int instance_id, risc::InstanceTree &tree, VariableType type)
void recursive_tree_walk (SgVariableDefinition *var_def, int &current_id, int instance_id, risc::InstanceTree &tree, bool &found, VariableType type)
bool operator== (const InstanceTree &ohs)

Public Attributes

Path path_

Private Member Functions

void recursive_tree_walk (std::list< InstanceTree > &occurence, SgVariableDefinition *var_def)
SgVariableSymbol * get_mapped_reference (SgVariableSymbol *reference, SgClassDefinition *base_class_def, SgClassDefinition *parent_class_def, SgVariableDefinition *parent_member)

Member Typedef Documentation

typedef std::list<Element> risc::InstanceTree::Path

Member Enumeration Documentation

These are the kind for of variables for which a traversal can search.

Enumerator:
ModuleInstance 
PrimitiveChannelInstance 
HierarchicalChannelInstance 
EventInstance 
VariableInstance 
PortInstance 

Constructor & Destructor Documentation

risc::InstanceTree::InstanceTree (  ) 
risc::InstanceTree::InstanceTree ( const InstanceTree other  ) 

Member Function Documentation

std::list< risc::InstanceTree > risc::InstanceTree::find_all_instances_of ( SgVariableDefinition *  var_def  ) 
void risc::InstanceTree::get_all_events ( std::list< InstanceTree > &  occurence  ) 
void risc::InstanceTree::get_all_ports ( std::list< InstanceTree > &  occurence  ) 
void risc::InstanceTree::get_instance_tree ( SgVariableDefinition *  var_def,
int  instance_id,
risc::InstanceTree tree,
VariableType  type 
)
SgVariableSymbol * risc::InstanceTree::get_mapped_reference ( SgVariableSymbol *  reference,
SgClassDefinition *  base_class_def,
SgClassDefinition *  parent_class_def,
SgVariableDefinition *  parent_member 
) [private]
risc::InstanceTree::get_object (  ) 

returns the object

risc::InstanceTree::get_object_symbol (  ) 

returns the symbol of the object

risc::InstanceTree::get_parent (  ) 

This function returns the parent variable of variable.

risc::InstanceTree::get_real_mapped_variable (  ) 

This function returns mapped variables for a reference. If the mapped variable is a global variable, the first scope pointer will be NULL.

risc::InstanceTree::get_scope (  ) 

returns the scope of the object

bool risc::InstanceTree::operator== ( const InstanceTree ohs  ) 
risc::InstanceTree::pop_back (  ) 

Deletes the last element in the instance tree.

risc::InstanceTree::print_instance_tree (  ) 

Prints the instance tree.

void risc::InstanceTree::push_back ( Element  ohs  ) 
void risc::InstanceTree::recursive_tree_walk ( std::list< InstanceTree > &  occurence,
SgVariableDefinition *  var_def 
) [private]
void risc::InstanceTree::recursive_tree_walk ( SgVariableDefinition *  var_def,
int &  current_id,
int  instance_id,
risc::InstanceTree tree,
bool &  found,
VariableType  type 
)

Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 12 Jun 2018 by  doxygen 1.6.1