ZLayout EDA Library v1.0.0
Advanced Electronic Design Automation Layout Library with Bilingual Documentation
Loading...
Searching...
No Matches
zlayout::components::Transformer Class Reference

Transformer component. More...

#include <passive_components.hpp>

Inheritance diagram for zlayout::components::Transformer:
Collaboration diagram for zlayout::components::Transformer:

Public Types

enum class  TransformerType {
  Power , Signal , Isolation , Current ,
  Voltage
}

Public Member Functions

 Transformer (const std::string &name, double turns_ratio, TransformerType type)
double getTurnsRatio () const
void setTurnsRatio (double ratio)
TransformerType getTransformerType () const
void setTransformerType (TransformerType type)
double getPrimaryInductance () const
void setPrimaryInductance (double l)
double getSecondaryInductance () const
void setSecondaryInductance (double l)
double getMutualInductance () const
void setMutualInductance (double m)
double getCouplingCoefficient () const
void setCouplingCoefficient (double k)
double getPrimaryResistance () const
void setPrimaryResistance (double r)
double getSecondaryResistance () const
void setSecondaryResistance (double r)
double getPowerRating () const
void setPowerRating (double power)
void simulate (double time_step) override
std::string getDescription () const override
Public Member Functions inherited from zlayout::components::Component
 Component (const std::string &name, ComponentCategory category)
virtual ~Component ()=default
const std::string & getName () const
const std::string & getType () const
ComponentCategory getCategory () const
void setName (const std::string &name)
void setType (const std::string &type)
void addChild (std::shared_ptr< Component > child)
void removeChild (const std::string &name)
std::shared_ptr< ComponentgetChild (const std::string &name) const
const std::vector< std::shared_ptr< Component > > & getChildren () const
std::shared_ptr< ComponentgetParent () const
void setParent (std::shared_ptr< Component > parent)
const geometry::RectanglegetBoundingBox () const
void setBoundingBox (const geometry::Rectangle &bbox)
geometry::Point getPosition () const
void setPosition (const geometry::Point &pos)
double getRotation () const
void setRotation (double angle)
void addPin (std::shared_ptr< Pin > pin)
void removePin (const std::string &name)
std::shared_ptr< PingetPin (const std::string &name) const
const std::vector< std::shared_ptr< Pin > > & getPins () const
void setProperty (const std::string &key, const std::string &value)
std::string getProperty (const std::string &key) const
const std::map< std::string, std::string > & getProperties () const
void setTimingInfo (const TimingInfo &timing)
const TimingInfogetTimingInfo () const
void setPowerInfo (const PowerInfo &power)
const PowerInfogetPowerInfo () const
void setElectricalInfo (const ElectricalInfo &electrical)
const ElectricalInfogetElectricalInfo () const
void setTechNode (TechNode node)
TechNode getTechNode () const
virtual void reset ()
virtual geometry::Rectangle calculateHierarchicalBoundingBox () const
virtual double calculateTotalArea () const
virtual size_t getTotalGateCount () const
virtual std::vector< std::shared_ptr< Component > > flattenHierarchy () const
virtual std::string serialize () const
virtual void deserialize (const std::string &data)

Additional Inherited Members

Protected Attributes inherited from zlayout::components::Component
std::string name_
std::string type_
ComponentCategory category_
std::vector< std::shared_ptr< Component > > children_
std::weak_ptr< Componentparent_
geometry::Rectangle bounding_box_
geometry::Point position_
double rotation_ = 0.0
std::vector< std::shared_ptr< Pin > > pins_
std::unordered_map< std::string, std::shared_ptr< Pin > > pin_map_
std::map< std::string, std::string > properties_
TimingInfo timing_
PowerInfo power_
ElectricalInfo electrical_
TechNode tech_node_ = TechNode::um_7

Detailed Description

Transformer component.

Definition at line 260 of file passive_components.hpp.

Member Enumeration Documentation

◆ TransformerType

Enumerator
Power 
Signal 
Isolation 
Current 
Voltage 

Definition at line 262 of file passive_components.hpp.

Constructor & Destructor Documentation

◆ Transformer()

zlayout::components::Transformer::Transformer ( const std::string & name,
double turns_ratio,
TransformerType type )

Member Function Documentation

◆ getCouplingCoefficient()

double zlayout::components::Transformer::getCouplingCoefficient ( ) const
inline

Definition at line 289 of file passive_components.hpp.

◆ getDescription()

std::string zlayout::components::Transformer::getDescription ( ) const
overridevirtual

Reimplemented from zlayout::components::Component.

◆ getMutualInductance()

double zlayout::components::Transformer::getMutualInductance ( ) const
inline

Definition at line 286 of file passive_components.hpp.

◆ getPowerRating()

double zlayout::components::Transformer::getPowerRating ( ) const
inline

Definition at line 300 of file passive_components.hpp.

◆ getPrimaryInductance()

double zlayout::components::Transformer::getPrimaryInductance ( ) const
inline

Definition at line 280 of file passive_components.hpp.

◆ getPrimaryResistance()

double zlayout::components::Transformer::getPrimaryResistance ( ) const
inline

Definition at line 293 of file passive_components.hpp.

◆ getSecondaryInductance()

double zlayout::components::Transformer::getSecondaryInductance ( ) const
inline

Definition at line 283 of file passive_components.hpp.

◆ getSecondaryResistance()

double zlayout::components::Transformer::getSecondaryResistance ( ) const
inline

Definition at line 296 of file passive_components.hpp.

◆ getTransformerType()

TransformerType zlayout::components::Transformer::getTransformerType ( ) const
inline

Definition at line 276 of file passive_components.hpp.

◆ getTurnsRatio()

double zlayout::components::Transformer::getTurnsRatio ( ) const
inline

Definition at line 273 of file passive_components.hpp.

◆ setCouplingCoefficient()

void zlayout::components::Transformer::setCouplingCoefficient ( double k)
inline

Definition at line 290 of file passive_components.hpp.

◆ setMutualInductance()

void zlayout::components::Transformer::setMutualInductance ( double m)
inline

Definition at line 287 of file passive_components.hpp.

◆ setPowerRating()

void zlayout::components::Transformer::setPowerRating ( double power)
inline

Definition at line 301 of file passive_components.hpp.

◆ setPrimaryInductance()

void zlayout::components::Transformer::setPrimaryInductance ( double l)
inline

Definition at line 281 of file passive_components.hpp.

◆ setPrimaryResistance()

void zlayout::components::Transformer::setPrimaryResistance ( double r)
inline

Definition at line 294 of file passive_components.hpp.

◆ setSecondaryInductance()

void zlayout::components::Transformer::setSecondaryInductance ( double l)
inline

Definition at line 284 of file passive_components.hpp.

◆ setSecondaryResistance()

void zlayout::components::Transformer::setSecondaryResistance ( double r)
inline

Definition at line 297 of file passive_components.hpp.

◆ setTransformerType()

void zlayout::components::Transformer::setTransformerType ( TransformerType type)
inline

Definition at line 277 of file passive_components.hpp.

◆ setTurnsRatio()

void zlayout::components::Transformer::setTurnsRatio ( double ratio)
inline

Definition at line 274 of file passive_components.hpp.

◆ simulate()

void zlayout::components::Transformer::simulate ( double time_step)
overridevirtual

Reimplemented from zlayout::components::Component.


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