risc::Function Class Reference

#include <function.h>

Inheritance diagram for risc::Function:
Inheritance graph
[legend]
Collaboration diagram for risc::Function:
Collaboration graph
[legend]

List of all members.

Public Types

enum  Type {
  CThreadType, ChannelType, ChannelInstanceType, ClassType,
  DefinitionType, EventType, FunctionType, HierarchicalChannelType,
  HierarchicalChannelInstanceType, InOutPortType, InPortType, InstanceType,
  InterfaceType, MethodType, ModuleType, ModuleInstanceType,
  ObjectType, OutPortType, PortType, PrimitiveChannelType,
  PrimitiveChannelInstanceType, ThreadType, VariableType
}
 

We are using these enums to identify type type of and instance or definition during traversal.

More...

Public Member Functions

 Function (SgFunctionDefinition *ast_node, Type type=FunctionType, Class *parent=NULL)
 Default constructor.
SgFunctionDefinition * get_ast_node ()
 Returns the ast definition of the function.
virtual std::string get_ast_type_name ()
 Returns the name of the type of the ast node.
std::string get_name ()
 returns the name of the function definition
void set_starting_node (SgNode *)
 Sets the starting_node_.
virtual SgType * get_ast_type ()
 Returns the type of the ast node.
bool has_source_location ()
 Determines if a ast node has an associated ast node.
std::string get_file_name ()
 Get the name of the file where the declaration is located.
int get_line_number ()
 Get the line number of the instance.
int get_position_in_line ()
 Get the position of the in declaration in the corresponding line In other words the column in the line.

Public Attributes

int starting_id_
 After generating a segment graph for a thread, cthread, or method each function will have a starting segment. This variables stores the associated id of the segment. The starting id will be unequal to -1, if an associated segment exists.
Classparent_
 If this function belongs to a module/channel it has a link to its class definition.
SgNode * starting_node_
 This variables stores the associated function call which starts a thread, cthread, or method.
Type type_
SgNode * ast_node_
SgType * ast_type_pointer_

Private Member Functions

 Function (const Function &f)
 Disabled copy constructor.

Member Enumeration Documentation

enum risc::Definition::Type [inherited]

We are using these enums to identify type type of and instance or definition during traversal.

Enumerator:
CThreadType 
ChannelType 
ChannelInstanceType 
ClassType 
DefinitionType 
EventType 
FunctionType 
HierarchicalChannelType 
HierarchicalChannelInstanceType 
InOutPortType 
InPortType 
InstanceType 
InterfaceType 
MethodType 
ModuleType 
ModuleInstanceType 
ObjectType 
OutPortType 
PortType 
PrimitiveChannelType 
PrimitiveChannelInstanceType 
ThreadType 
VariableType 

Constructor & Destructor Documentation

risc::Function::Function ( SgFunctionDefinition *  ast_node,
Type  type = FunctionType,
Class parent = NULL 
)

Default constructor.

risc::Function::Function ( const Function f  )  [private]

Disabled copy constructor.


Member Function Documentation

SgFunctionDefinition * risc::Function::get_ast_node (  )  [virtual]

Returns the ast definition of the function.

Returns:
Pointer to the definition

Reimplemented from risc::Definition.

SgType * risc::Definition::get_ast_type (  )  [virtual, inherited]

Returns the type of the ast node.

std::string risc::Function::get_ast_type_name (  )  [virtual]

Returns the name of the type of the ast node.

Reimplemented from risc::Definition.

std::string risc::Definition::get_file_name (  )  [inherited]

Get the name of the file where the declaration is located.

Returns:
filename
int risc::Definition::get_line_number (  )  [inherited]

Get the line number of the instance.

Returns:
line number
std::string risc::Function::get_name (  )  [virtual]

returns the name of the function definition

Reimplemented from risc::Definition.

int risc::Definition::get_position_in_line (  )  [inherited]

Get the position of the in declaration in the corresponding line In other words the column in the line.

Returns:
position in line
bool risc::Definition::has_source_location (  )  [inherited]

Determines if a ast node has an associated ast node.

void risc::Function::set_starting_node ( SgNode *  starting_node  ) 

Sets the starting_node_.


Member Data Documentation

SgNode* risc::Definition::ast_node_ [inherited]

If this function belongs to a module/channel it has a link to its class definition.

After generating a segment graph for a thread, cthread, or method each function will have a starting segment. This variables stores the associated id of the segment. The starting id will be unequal to -1, if an associated segment exists.

This variables stores the associated function call which starts a thread, cthread, or method.


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