Xyce
6.1
|
Devices and models are each named. More...
#include <N_DEV_InstanceName.h>
Public Member Functions | |
InstanceName () | |
Creates an empty entity name. More... | |
InstanceName (const std::string &name) | |
Creates an entity. More... | |
InstanceName & | operator= (const InstanceName &entity_name) |
Creates an entity. More... | |
char | getDeviceLetter () const |
Return the first letter of the device specification after the subcircuit. More... | |
std::string | getDeviceType () const |
Decodes the device type. More... | |
std::string | getDeviceName () const |
Decodes the device name. More... | |
std::string | getSubcircuitName () const |
Decodes the device name. More... | |
int | getNumInputs () const |
For the U device, return the number of inputs which have been encoded into the device name. More... | |
const std::string & | getEncodedName () const |
Return the instance name encoded as: [s:]*xname [s:]*Ytype!name [s:]*Utype!name!count. More... | |
Private Member Functions | |
InstanceName (char device_letter, const std::string &device_type, const std::string &subcircuit_name, const std::string &device_name, int num_inputs) | |
void | decode () |
void | encode () |
char | decodeDeviceLetter () const |
std::string | decodeDeviceType () const |
std::string | decodeDeviceName () const |
std::string | decodeSubcircuitName () const |
int | decodeNumInputs () const |
Private Attributes | |
char | deviceLetter_ |
Device letter (Y or U included) More... | |
std::string | deviceType_ |
Device type from netlist (does NOT include Y or U prefix) More... | |
std::string | deviceName_ |
Device name from netlist (subcircuit NOT included) More... | |
std::string | subcircuitName_ |
Device subcircuit from netlist. More... | |
int | numInputs_ |
Hack for U type device (needs to become a parameter) More... | |
std::string | name_ |
Complete encoded name. More... | |
Devices and models are each named.
Models are not encoded, so simple string representation is sufficient. However Devices are a different lot. They are encoded as
[s:]*xname [s:]*Ytype!name [s:]*Utype!name!count
where s is a subciruit name, x is a single letter device type, type is a multiletter device type (no Y or U prefix) and count is a special input count for the U device.
Currently encoded names are accepted and then decoded using the getter's. In the future, these will be stored in component form and then encoded onyl as needed.
Definition at line 83 of file N_DEV_InstanceName.h.
|
inlineprivate |
Definition at line 86 of file N_DEV_InstanceName.h.
|
inline |
Creates an empty entity name.
Definition at line 110 of file N_DEV_InstanceName.h.
|
inlineexplicit |
Creates an entity.
name | model or encoded device entity name |
Definition at line 137 of file N_DEV_InstanceName.h.
|
private |
Definition at line 54 of file N_DEV_InstanceName.C.
|
private |
Definition at line 124 of file N_DEV_InstanceName.C.
|
private |
Definition at line 87 of file N_DEV_InstanceName.C.
|
private |
Definition at line 68 of file N_DEV_InstanceName.C.
|
private |
Definition at line 134 of file N_DEV_InstanceName.C.
|
private |
Definition at line 114 of file N_DEV_InstanceName.C.
|
private |
Definition at line 64 of file N_DEV_InstanceName.C.
|
inline |
Return the first letter of the device specification after the subcircuit.
The device letter is Y or U for multiletter device names or the letter that identifies the device for sinlge letter names.
Definition at line 193 of file N_DEV_InstanceName.h.
|
inline |
Decodes the device name.
The device name is a string containing the first letter for a single letter device name, or the string starting after the Y or U up to but noe including the exclamation point (!).
Subcircuit prefixes are not included.
Definition at line 242 of file N_DEV_InstanceName.h.
|
inline |
Decodes the device type.
The device type is a string containing the first letter for a single letter device name, or the string starting after the Y or U up to but noe including the exclamation point (!).
Subcircuit prefixes are not included.
Definition at line 217 of file N_DEV_InstanceName.h.
|
inline |
Return the instance name encoded as: [s:]*xname [s:]*Ytype!name [s:]*Utype!name!count.
Definition at line 310 of file N_DEV_InstanceName.h.
|
inline |
For the U device, return the number of inputs which have been encoded into the device name.
(These probably should be encoded into the device parameters, not the name.)
Definition at line 289 of file N_DEV_InstanceName.h.
|
inline |
Decodes the device name.
The device name is a string containing the first letter for a single letter device name, or the string starting after the Y or U up to but noe including the exclamation point (!).
Definition at line 265 of file N_DEV_InstanceName.h.
|
inline |
Creates an entity.
name | model or encoded device entity name |
Definition at line 166 of file N_DEV_InstanceName.h.
|
private |
Device letter (Y or U included)
Definition at line 326 of file N_DEV_InstanceName.h.
|
private |
Device name from netlist (subcircuit NOT included)
Definition at line 328 of file N_DEV_InstanceName.h.
|
private |
Device type from netlist (does NOT include Y or U prefix)
Definition at line 327 of file N_DEV_InstanceName.h.
|
private |
Complete encoded name.
Definition at line 332 of file N_DEV_InstanceName.h.
|
private |
Hack for U type device (needs to become a parameter)
Definition at line 330 of file N_DEV_InstanceName.h.
|
private |
Device subcircuit from netlist.
Definition at line 329 of file N_DEV_InstanceName.h.