This class represents a instance of a module. More...
#include <module_instance.h>
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 | |
ModuleInstance (SgVariableDefinition *ast_node, Module *ir_def) | |
default constructor More... | |
ModuleInstance (SgVariableDefinition *ast_node, Type type) | |
This constructor is used for classes which derived from sc_module Currently, this is only sc_channel. More... | |
virtual Module * | get_definition () |
returns this associated definition of the module instance More... | |
void | add_mapping (Port *port, Object *object) |
This is a helper functio to add a mapping. More... | |
void | add_socket_mapping (Socket *socket_from, Socket *socket_to) |
This is a helper functio to add a mapping. More... | |
void | add_backward_socket_mapping (Socket *socket_from, Socket *socket_to) |
This is a helper functio to add a mapping. More... | |
std::string | get_instance_qualified_name () |
return the qualified name of the module instance for example: ::top::prod_inst More... | |
virtual std::string | get_ast_type_name () |
Get function for the name of the ast type of the module instance. More... | |
SgVariableDefinition * | get_ast_node () |
Returns the ast definition of the object. More... | |
bool | is_array () |
checks if this object is an array More... | |
bool | is_reference () |
checks if this object is a reference More... | |
bool | is_pointer () |
checks if this object is a pointer More... | |
virtual std::string | get_name () |
Get function for the name of the module instance variable. More... | |
SgVariableSymbol * | get_symbol () |
return the symbol of the object 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 | |
std::map< Port *, Object * > | mapping_ |
std::map< Socket *, Socket * > | socket_mapping_ |
std::map< Socket *, Socket * > | backward_socket_mapping_ |
unsigned int | number_of_array_elements_ |
Type | type_ |
SgNode * | ast_node_ |
SgType * | ast_type_pointer_ |
Private Member Functions | |
ModuleInstance (const ModuleInstance &md) | |
Disabled copy constructor. More... | |
Private Attributes | |
Module * | module_definition_ |
This pointer points to the corresponding definition in the internal representation. More... | |
This class represents a instance of a module.
A module instance has a type pointer and rose ast pointer.
|
inherited |
We are using these enums to identify type type of and instance or definition during traversal.
|
explicit |
default constructor
|
explicit |
This constructor is used for classes which derived from sc_module Currently, this is only sc_channel.
|
private |
Disabled copy constructor.
This is a helper functio to add a mapping.
This is a helper functio to add a mapping.
This is a helper functio to add a mapping.
|
virtualinherited |
Returns the ast definition of the object.
Reimplemented from risc::Definition.
|
virtualinherited |
Returns the type of the ast node.
|
virtualinherited |
Get function for the name of the ast type of the module instance.
Reimplemented from risc::Definition.
Reimplemented in risc::PrimitiveChannelInstance.
|
virtual |
returns this associated definition of the module instance
Implements risc::Instance.
Reimplemented in risc::HierarchicalChannelInstance.
|
inherited |
Get the name of the file where the declaration is located.
risc::ModuleInstance::get_instance_qualified_name | ( | ) |
return the qualified name of the module instance for example: ::top::prod_inst
|
inherited |
Get the line number of the instance.
|
virtualinherited |
Get function for the name of the module instance variable.
Reimplemented from risc::Definition.
|
inherited |
Get the position of the in declaration in the corresponding line In other words the column in the line.
|
inherited |
return the symbol of the object
|
inherited |
Determines if a ast node has an associated ast node.
|
inherited |
checks if this object is an array
|
inherited |
checks if this object is a pointer
|
inherited |
checks if this object is a reference
|
inherited |
|
inherited |
|
private |
This pointer points to the corresponding definition in the internal representation.
|
inherited |
|
inherited |