# Hurricane VLSI Database

List of all members | Public Member Functions
Hurricane::Entity Class Referenceabstract

Occurrenceable objects root class (API). More...

Inheritance diagram for Hurricane::Entity:
[legend]

## Public Member Functions
virtual Cell * | getCell () const =0
virtual Box | getBoundingBox () const =0
Public Member Functions inherited from Hurricane::DBo
virtual void | destroy ()
Property * | getProperty (const Name &) const
Properties | getProperties () const
bool | hasProperty () const
void | put (Property *)
void | remove (Property *)
void | removeProperty (const Name &)
void | clearProperties ()

## Detailed Description

Occurrenceable objects root class (API).

# Introduction

Entities are abstract objects representing the category of occurrenceable objects.

# Unique Identifier

Each Entity is associated with a unique identifier (see Entity::getId()). This identifier is used as a sorting key in the various IntrusiveMap throughout Hurricane to ensure determinism. It came as a replacement of the object's own address which is not suitable for this purpose.

For STL container, the Entity::CompareById functor is provided.

The identifier is generated from an ever incrementing counter on 32 bits or 64 bits, depending on the target system architecture. If the 32/64 bit capacity is reached an exception is thrown.

## Member Function Documentation

## ◆ getCell()

Cell * Hurricane::Entity::getCell | ( |  | ) | const
| pure virtual

Returns: Returns the cell owning this entity (when the Entity is a Cell, the Cell itself is returned)

## ◆ getBoundingBox()

Box Hurricane::Entity::getBoundingBox | ( |  | ) | const
| pure virtual

Returns
  Returns the bounding box of the entity. It is defined as the smallest box enclosing the entity or its constituents.

Remarks
  For the Plugs, which are not objects of the physical layout, the returned envelope is a Box of null dimensions (ponctual) centered on the location of the master Net of the Plug, to which has been applied the transformation associated to the Instance of the Plug.

Implemented in Hurricane::RoutingPad.

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

- Entity.h
- Entity.dox

Generated by doxygen 1.8.14 on Tue Jul 21 2020 | Return to top of page

Hurricane VLSI Database | Copyright © 2000-2016 Bull S.A. All rights reserved