Simple Nano Circuit 0.0.2
BaseIcObject Class Referenceabstract
Inheritance diagram for BaseIcObject:
BaseElectronObject CapacitorObject GroundObject InductorObject NpnObject PnpObject PowerACObject PowerDCObject ResistorObject

Public Member Functions

 BaseIcObject (AsgardClass *)
 
 BaseIcObject (BaseIcObject *)
 
void setupPixelData (const uint32_t *)
 
void createSelfTexture (BaseIcObject::ColorStyle)
 
void processKeyEvent (int) override
 
void Drawing () override
 
void Drawing (BaseElectronObject::RendererEffective) override
 
BaseElectronObjectprocessClickEvent (SDL_Point &) override
 
SDL_Rect getLocationRect () override
 
virtual void pinInvalidNotify (FootPinNode *)
 
virtual void setCurrentNotify (FootPinNode *)
 
virtual FootPinNodegetOppositePin (const FootPinNode *)
 
virtual NetlistClassgetOppositeNetlist (const FootPinNode *)
 
virtual double getVoltageFrom (const NetlistClass *)
 
virtual double getVoltageFrom (const FootPinNode *)
 
void processMouseMotion (const SDL_Point &) override
 
void updateLocationAndRotateMirrow (SDL_Point, int, int)
 
- Public Member Functions inherited from BaseElectronObject
 BaseElectronObject (AsgardClass *)
 
virtual const ICType getType () const =0
 
virtual void Drawing ()=0
 
virtual void Drawing (BaseElectronObject::RendererEffective)=0
 
virtual BaseElectronObjectprocessClickEvent (SDL_Point &)=0
 
virtual void processKeyEvent (int)=0
 
virtual BaseElectronObjectdeepDuplicateSelf ()=0
 
virtual SDL_Rect getLocationRect ()=0
 
virtual const char * popupWindowName () const =0
 
virtual bool havePopupWindow ()=0
 
virtual void CreateImGuiForm ()=0
 
virtual void saveToFile (std::ofstream &)=0
 
virtual void processMouseMotion (const SDL_Point &)=0
 

Public Attributes

SDL_Point centerPos
 
SDL_Texture * selfTexture = nullptr
 
int symbolWidth = 0
 
int symbolHeight = 0
 
bool symbolCouldRotate = true
 
bool symbolCouldMirrow = false
 
uint32_t * symbol_pixel_data = nullptr
 
std::vector< FootPinNode * > footPinNodes
 
- Public Attributes inherited from BaseElectronObject
const int moveMinStepLength = MIN_STEP_LENGTH
 
AsgardClassasgard = nullptr
 

Protected Member Functions

void symbolChangeRotate ()
 
void symbolChangeMirrow ()
 
virtual void init ()=0
 
virtual void setupFootPins ()=0
 

Protected Attributes

int rotateNumber = 0
 
int mirrowNumber = 0
 

Additional Inherited Members

- Public Types inherited from BaseElectronObject
enum class  RendererEffective { Valid = 1 , Invalid }
 

Member Function Documentation

◆ Drawing() [1/2]

void BaseIcObject::Drawing ( )
overridevirtual

Implements BaseElectronObject.

◆ Drawing() [2/2]

void BaseIcObject::Drawing ( BaseElectronObject::RendererEffective  _rendererEffective)
overridevirtual

Implements BaseElectronObject.

◆ getLocationRect()

SDL_Rect BaseIcObject::getLocationRect ( )
overridevirtual

Implements BaseElectronObject.

◆ processClickEvent()

BaseElectronObject * BaseIcObject::processClickEvent ( SDL_Point &  _mouseClickedPos)
overridevirtual

Implements BaseElectronObject.

◆ processKeyEvent()

void BaseIcObject::processKeyEvent ( int  _keyScanCode)
overridevirtual

Implements BaseElectronObject.

◆ processMouseMotion()

void BaseIcObject::processMouseMotion ( const SDL_Point &  _mousePos)
overridevirtual

Implements BaseElectronObject.


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