All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | Private Member Functions | List of all members
risc::Function Class Reference

#include <function.h>

Inheritance diagram for risc::Function:
Inheritance graph
Collaboration diagram for risc::Function:
Collaboration graph

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, SocketType,
  InitiatorSocketType, TargetSocketType
}
 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. More...
 
SgFunctionDefinition * get_ast_node ()
 Returns the ast definition of the function. More...
 
virtual std::string get_ast_type_name ()
 Returns the name of the type of the ast node. More...
 
std::string get_name ()
 returns the name of the function definition More...
 
void set_starting_node (SgNode *)
 Sets the starting_node_. More...
 
virtual SgType * get_ast_type ()
 Returns the type of the ast node. More...
 
bool has_source_location ()
 Determines if a ast node has an associated ast node. More...
 
std::string get_file_name ()
 Get the name of the file where the declaration is located. More...
 
int get_line_number ()
 Get the line number of the instance. More...
 
int get_position_in_line ()
 Get the position of the in declaration in the corresponding line In other words the column in the line. More...
 

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. More...
 
Classparent_
 If this function belongs to a module/channel it has a link to its class definition. More...
 
SgNode * starting_node_
 This variables stores the associated function call which starts a thread, cthread, or method. More...
 
Type type_
 
SgNode * ast_node_
 
SgType * ast_type_pointer_
 

Private Member Functions

 Function (const Function &f)
 Disabled copy constructor. More...
 

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 
SocketType 
InitiatorSocketType 
TargetSocketType 

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 ( )
virtualinherited

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
SgType* risc::Definition::ast_type_pointer_
inherited
Class* risc::Function::parent_

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

int risc::Function::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.

SgNode* risc::Function::starting_node_

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

Type risc::Definition::type_
inherited

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