openMSX
Public Member Functions | List of all members
openmsx::ClockPin Class Referencefinal

#include <ClockPin.hh>

Inheritance diagram for openmsx::ClockPin:
Inheritance graph
[legend]
Collaboration diagram for openmsx::ClockPin:
Collaboration graph
[legend]

Public Member Functions

 ClockPin (Scheduler &scheduler, ClockPinListener *listener=nullptr)
 
void setState (bool status, EmuTime::param time)
 
void setPeriodicState (EmuDuration::param total, EmuDuration::param hi, EmuTime::param time)
 
bool getState (EmuTime::param time) const
 
bool isPeriodic () const
 
EmuDuration::param getTotalDuration () const
 
EmuDuration::param getHighDuration () const
 
int getTicksBetween (EmuTime::param begin, EmuTime::param end) const
 
void generateEdgeSignals (bool wanted, EmuTime::param time)
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 
- Public Member Functions inherited from openmsx::Schedulable
 Schedulable (const Schedulable &)=delete
 
Schedulableoperator= (const Schedulable &)=delete
 
virtual void executeUntil (EmuTime::param time)=0
 When the previously registered syncPoint is reached, this method gets called. More...
 
virtual void schedulerDeleted ()
 Just before the the Scheduler is deleted, it calls this method of all the Schedulables that are still registered. More...
 
SchedulergetScheduler () const
 
EmuTime::param getCurrentTime () const
 Convenience method: This is the same as getScheduler().getCurrentTime(). More...
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 

Additional Inherited Members

- Static Public Member Functions inherited from openmsx::Schedulable
template<typename Archive >
static std::vector< SyncPointBWserializeBW (Archive &ar)
 
template<typename Archive >
static void restoreOld (Archive &ar, std::vector< Schedulable * > schedulables)
 
- Protected Member Functions inherited from openmsx::Schedulable
 Schedulable (Scheduler &scheduler)
 
 ~Schedulable ()
 
void setSyncPoint (EmuTime::param timestamp)
 
bool removeSyncPoint ()
 
void removeSyncPoints ()
 
bool pendingSyncPoint () const
 
bool pendingSyncPoint (EmuTime &result) const
 

Detailed Description

Definition at line 22 of file ClockPin.hh.

Constructor & Destructor Documentation

◆ ClockPin()

openmsx::ClockPin::ClockPin ( Scheduler scheduler,
ClockPinListener listener = nullptr 
)
explicit

Definition at line 8 of file ClockPin.cc.

Member Function Documentation

◆ generateEdgeSignals()

void openmsx::ClockPin::generateEdgeSignals ( bool  wanted,
EmuTime::param  time 
)

Definition at line 94 of file ClockPin.cc.

Referenced by openmsx::MSXMidi::MSXMidi().

◆ getHighDuration()

EmuDuration::param openmsx::ClockPin::getHighDuration ( ) const

Definition at line 70 of file ClockPin.cc.

◆ getState()

bool openmsx::ClockPin::getState ( EmuTime::param  time) const

Definition at line 55 of file ClockPin.cc.

Referenced by openmsx::Counter::latchStatus().

◆ getTicksBetween()

int openmsx::ClockPin::getTicksBetween ( EmuTime::param  begin,
EmuTime::param  end 
) const

Definition at line 76 of file ClockPin.cc.

References begin(), end(), and openmsx::EmuDuration::zero().

◆ getTotalDuration()

EmuDuration::param openmsx::ClockPin::getTotalDuration ( ) const

Definition at line 64 of file ClockPin.cc.

Referenced by openmsx::I8251::recvByte(), and openmsx::Counter::setGateStatus().

◆ isPeriodic()

bool openmsx::ClockPin::isPeriodic ( ) const
inline

Definition at line 34 of file ClockPin.hh.

Referenced by openmsx::I8251::recvByte(), and openmsx::Counter::setGateStatus().

◆ serialize()

template<typename Archive >
void openmsx::ClockPin::serialize ( Archive &  ar,
unsigned  version 
)

Definition at line 136 of file ClockPin.cc.

◆ setPeriodicState()

void openmsx::ClockPin::setPeriodicState ( EmuDuration::param  total,
EmuDuration::param  hi,
EmuTime::param  time 
)

◆ setState()

void openmsx::ClockPin::setState ( bool  status,
EmuTime::param  time 
)

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