Hurricane VLSI Database


List of all members | Public Types | Public Member Functions
Hurricane::Plug Class Reference

Plug description (API) More...

Inheritance diagram for Hurricane::Plug:
Inheritance graph
[legend]

Public Types

typedef Component Inherit
 
- Public Types inherited from Hurricane::Component
typedef Go Inherit
 

Public Member Functions

InstancegetInstance () const
 
NetgetMasterNet () const
 
bool isConnected () const
 
void setNet (Net *net)
 
- Public Member Functions inherited from Hurricane::Component
NetgetNet () const
 
RubbergetRubber () const
 
HookgetBodyHook ()
 
virtual Hooks getHooks () const
 
Components getConnexComponents () const
 
Components getSlaveComponents () const
 
- Public Member Functions inherited from Hurricane::Go
bool isMaterialized () const
 
- Public Member Functions inherited from Hurricane::DBo
PropertygetProperty (const Name &) const
 
Properties getProperties () const
 
bool hasProperty () const
 
void put (Property *)
 
void remove (Property *)
 
void removeProperty (const Name &)
 
void clearProperties ()
 

Static Public Member Functions

Plug Collection
static PlugFilter getIsConnectedFilter ()
 
static PlugFilter getIsUnconnectedFilter ()
 
- Static Public Member Functions inherited from Hurricane::Component
static ComponentFilter getIsUnderFilter (const Box &area)
 
- Static Public Member Functions inherited from Hurricane::Go
static bool autoMaterializationIsDisabled ()
 
static void enableAutoMaterialization ()
 
static void disableAutoMaterialization ()
 

Detailed Description

Plug description (API)

Introduction

A plug can be assimilated to a "logical port instance" : it designates both the concerned instance and the net of the model cell instanciated to which it is connected. This net, which must be an external net, will be named "master net" because it is a net of the instance master cell (notice that this net can be asimilated to a "logical port").

A plug is unique, that is, for a given instance there is one and only one plug refering to a given master net.

Caution: When created, an instance creates all plugs corresponding to
the external nets of its master cell. So, some plugs may exist without being connected. Plugs are the only components which have this characteristic.
Remarks
Plugs being completely managed by the system, you can't define sub-types of plugs.

Constructors & Destructors

Plugs being completely managed by the system, there is no constructor nor destructor provided.

Predefined filters

Hurricane::Plug::getIsConnectedFilter Hurricane::Plug::getIsUnconnectedFilter

Member Typedef Documentation

◆ Inherit

Useful for calling upon methods of the base class without knowing it.

Member Function Documentation

◆ getInstance()

Instance * Hurricane::Plug::getInstance ( ) const
inline

Returns: the instance to which belongs the plug.

◆ getMasterNet()

Net * Hurricane::Plug::getMasterNet ( ) const
inline

Returns: the external net referenced by the plug in the master cell of its instance.

Remarks
Don't mistake with getNet() which returns the net owning the plug (or NULL if is unconnected).

◆ getIsConnectedFilter()

PlugFilter Hurricane::Plug::getIsConnectedFilter ( )
static

Returns: a filter for selecting only connected plugs.

◆ getIsUnconnectedFilter()

PlugFilter Hurricane::Plug::getIsUnconnectedFilter ( )
static

Returns: a filter for selecting only unconnected plugs.

◆ isConnected()

bool Hurricane::Plug::isConnected ( ) const
inline

Returns: true if the plug is connected, else false.

Remarks
A plug is connected if the call upon getNet() doesn't return NULL.

References Hurricane::Component::getNet().

◆ setNet()

void Hurricane::Plug::setNet ( Net net)

This method allows to connect or change the net of a plug.

Caution: An exception is thrown if the net owner cell differs from the
plug owner cell, or if there are components (contact, segments, ...) currently anchored on the plug.
Remarks
The properties attached to this plug and its occurences are left unchanged.

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


Generated by doxygen 1.9.1 on Thu Aug 11 2022 Return to top of page
Hurricane VLSI Database Copyright © 2000-2020 Bull S.A. All rights reserved