47 #ifndef Xyce_N_DEV_InstanceName_h
48 #define Xyce_N_DEV_InstanceName_h
53 #include <N_UTL_NoCase.h>
86 InstanceName(
char device_letter,
const std::string &device_type,
const std::string &subcircuit_name,
const std::string &device_name,
int num_inputs)
386 std::ostream &
operator<<(std::ostream &os,
const InstanceName &instance_name);
389 std::string
spiceInternalName(
const InstanceName &instance_name,
const std::string &lead);
390 std::string
spiceStoreName(
const InstanceName &instance_name,
const std::string &lead);
395 #endif // Xyce_N_DEV_InstanceName_h
const std::string & getSubcircuitName() const
Decodes the device name.
Pure virtual class to augment a linear system.
Devices and models are each named.
const std::string & getEncodedName() const
Return the instance name encoded as: [s:]*xname [s:]*Ytype!name [s:]*Utype!name!count.
char decodeDeviceLetter() const
bool operator<(const InstanceName &instance_name, const std::string &name)
std::string decodeDeviceType() const
InstanceName(char device_letter, const std::string &device_type, const std::string &subcircuit_name, const std::string &device_name, int num_inputs)
std::string deviceName_
Device name from netlist (subcircuit NOT included)
int decodeNumInputs() const
bool operator!=(const InstanceName &instance_name, const std::string &name)
std::string decodeDeviceName() const
std::string name_
Complete encoded name.
char getDeviceLetter() const
Return the first letter of the device specification after the subcircuit.
InstanceName(const std::string &name)
Creates an entity.
std::string spiceStoreName(const InstanceName &instance_name, const std::string &lead)
InstanceName(const InstanceName &entity_name)
Copies an instance name.
InstanceName & operator=(const InstanceName &instance_name)
Assigns an instance name.
const std::string & getDeviceName() const
Decodes the device name.
std::string spiceInternalName(const InstanceName &instance_name, const std::string &lead)
bool operator==(const InstanceName &instance_name, const std::string &name)
std::string deviceType_
Device type from netlist (does NOT include Y or U prefix)
int numInputs_
Hack for U type device (needs to become a parameter)
int getNumInputs() const
For the U device, return the number of inputs which have been encoded into the device name...
const std::string & getDeviceType() const
Decodes the device type.
std::string setupOutputName(const InstanceName &name)
std::string decodeSubcircuitName() const
InstanceName()
Creates an empty entity name.
std::ostream & operator<<(std::ostream &os, const Configuration &configuration)
std::string subcircuitName_
Device subcircuit from netlist.
char deviceLetter_
Device letter (Y or U included)