torc-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
torc::physical::InstanceReference Class Reference

Instantiation of a module instance. More...

#include <InstanceReference.hpp>

+ Collaboration diagram for torc::physical::InstanceReference:

Public Member Functions

const ModuleWeakPtrgetModulePtr (void) const
 Returns the weak module pointer. More...
 
const InstanceWeakPtrgetInstancePtr (void) const
 Returns the weak instance pointer. More...
 
const stringgetInstantiationName (void) const
 Returns the instantiation name. More...
 
bool operator== (const InstanceReference &rhs) const
 Equality operator. More...
 

Protected Types

typedef std::string string
 Imported type name. More...
 
typedef boost::shared_ptr
< class Instance
InstanceSharedPtr
 Local forward declaration of InstanceSharedPtr to avoid dependency loops. More...
 
typedef boost::weak_ptr< class
Instance
InstanceWeakPtr
 Local forward declaration of InstanceWeakPtr to avoid dependency loops. More...
 
typedef boost::shared_ptr
< class Module
ModuleSharedPtr
 Local forward declaration of ModuleSharedPtr to avoid dependency loops. More...
 
typedef boost::weak_ptr< class
Module
ModuleWeakPtr
 Local forward declaration of ModuleWeakPtr to avoid dependency loops. More...
 

Protected Member Functions

 InstanceReference (const string &inInstantiationName, ModuleSharedPtr inModulePtr, InstanceSharedPtr inInstancePtr)
 Protected constructor. More...
 

Protected Attributes

string mInstantiationName
 The module instantiation name. More...
 
ModuleWeakPtr mModulePtr
 The module weak pointer. More...
 
InstanceWeakPtr mInstancePtr
 The instance weak pointer. More...
 

Friends

class Factory
 The Factory class has direct access to our internals. More...
 

Detailed Description

Instantiation of a module instance.

This class references a module instance. It is used in cases where a module has been instantiated in a design, and instances appearing in that design point back to the module instances they were instantiated from.

Definition at line 32 of file InstanceReference.hpp.

Member Typedef Documentation

typedef boost::shared_ptr<class Instance> torc::physical::InstanceReference::InstanceSharedPtr
protected

Local forward declaration of InstanceSharedPtr to avoid dependency loops.

Definition at line 41 of file InstanceReference.hpp.

typedef boost::weak_ptr<class Instance> torc::physical::InstanceReference::InstanceWeakPtr
protected

Local forward declaration of InstanceWeakPtr to avoid dependency loops.

Definition at line 43 of file InstanceReference.hpp.

typedef boost::shared_ptr<class Module> torc::physical::InstanceReference::ModuleSharedPtr
protected

Local forward declaration of ModuleSharedPtr to avoid dependency loops.

Definition at line 45 of file InstanceReference.hpp.

typedef boost::weak_ptr<class Module> torc::physical::InstanceReference::ModuleWeakPtr
protected

Local forward declaration of ModuleWeakPtr to avoid dependency loops.

Definition at line 47 of file InstanceReference.hpp.

typedef std::string torc::physical::InstanceReference::string
protected

Imported type name.

Definition at line 39 of file InstanceReference.hpp.

Constructor & Destructor Documentation

torc::physical::InstanceReference::InstanceReference ( const string inInstantiationName,
ModuleSharedPtr  inModulePtr,
InstanceSharedPtr  inInstancePtr 
)
inlineprotected

Protected constructor.

Parameters
inInstantiationNameThe name under which the reference module was instantiated.
inModulePtrThe module containing the referenced instance.
inInstancePtrThe instance being referenced.

Definition at line 62 of file InstanceReference.hpp.

63  : mInstantiationName(inInstantiationName),
64  mModulePtr(inModulePtr), mInstancePtr(inInstancePtr) {}
ModuleWeakPtr mModulePtr
The module weak pointer.
string mInstantiationName
The module instantiation name.
InstanceWeakPtr mInstancePtr
The instance weak pointer.

Member Function Documentation

const InstanceWeakPtr& torc::physical::InstanceReference::getInstancePtr ( void  ) const
inline

Returns the weak instance pointer.

Definition at line 70 of file InstanceReference.hpp.

70 { return mInstancePtr; }
InstanceWeakPtr mInstancePtr
The instance weak pointer.

+ Here is the caller graph for this function:

const string& torc::physical::InstanceReference::getInstantiationName ( void  ) const
inline

Returns the instantiation name.

Definition at line 72 of file InstanceReference.hpp.

72 { return mInstantiationName; }
string mInstantiationName
The module instantiation name.

+ Here is the caller graph for this function:

const ModuleWeakPtr& torc::physical::InstanceReference::getModulePtr ( void  ) const
inline

Returns the weak module pointer.

Definition at line 68 of file InstanceReference.hpp.

68 { return mModulePtr; }
ModuleWeakPtr mModulePtr
The module weak pointer.

+ Here is the caller graph for this function:

bool torc::physical::InstanceReference::operator== ( const InstanceReference rhs) const
inline

Equality operator.

Definition at line 76 of file InstanceReference.hpp.

76  {
77  return !(mInstancePtr < rhs.mInstancePtr) && !(rhs.mInstancePtr < mInstancePtr)
78  && !(mModulePtr < rhs.mModulePtr) && !(rhs.mModulePtr < mModulePtr)
79  && mInstantiationName == rhs.mInstantiationName;
80  }
ModuleWeakPtr mModulePtr
The module weak pointer.
string mInstantiationName
The module instantiation name.
InstanceWeakPtr mInstancePtr
The instance weak pointer.

Friends And Related Function Documentation

friend class Factory
friend

The Factory class has direct access to our internals.

Definition at line 35 of file InstanceReference.hpp.

Field Documentation

InstanceWeakPtr torc::physical::InstanceReference::mInstancePtr
protected

The instance weak pointer.

The instance pointer points to the module instance that this object references.

Definition at line 56 of file InstanceReference.hpp.

string torc::physical::InstanceReference::mInstantiationName
protected

The module instantiation name.

The instantiation name is the name under which the module was instantiated.

Definition at line 51 of file InstanceReference.hpp.

ModuleWeakPtr torc::physical::InstanceReference::mModulePtr
protected

The module weak pointer.

Definition at line 53 of file InstanceReference.hpp.


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