gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
EventManager Class Reference

#include <eventq.hh>

Inheritance diagram for EventManager:
BasePixelPump DRAMCtrl::Rank Intel8254Timer MC146818 SimObject HDLcd::PixelPump X86ISA::I8254::X86Intel8254Timer MaltaIO::RTC TsunamiIO::RTC X86ISA::Cmos::X86RTC AbstractNVM AbstractReplacementPolicy AlphaISA::Interrupts AlphaISA::ISA ArmISA::Interrupts ArmISA::ISA ArmISA::PMU ArmISA::Stage2MMU BaseMemProbe BaseTLB BasicLink BPredUnit CacheMemory ClockDomain ClockedObject DirectedGenerator DirectoryMemory DiskImage DVFSHandler EmulatedDriver EtherDump EtherObject FaultModel FUDesc FUPool GenericTimer Gicv2mFrame I2CDevice IdeDisk IntrControl KvmVM MemChecker MessageBuffer MinorFU MinorFUPool MinorFUTiming MinorOpClass MinorOpClassSet MipsISA::Interrupts MipsISA::ISA OpDesc Platform PowerISA::Interrupts PowerISA::ISA PowerModel PowerModelState Prefetcher ProbeListenerObject Process RealViewTemperatureSensor RiscvISA::Interrupts RiscvISA::ISA Root SimpleDisk SnoopFilter SouthBridge SparcISA::Interrupts SparcISA::ISA SubSystem Terminal ThermalCapacitor ThermalDomain ThermalNode ThermalReference ThermalResistor TimingExpr Trace::InstTracer UFSHostDevice::UFSSCSIDevice VectorRegisterFile VirtIODeviceBase VncInput VoltageDomain Wavefront WireBuffer X86ISA::ACPI::RSDP X86ISA::ACPI::SysDescTable X86ISA::E820Entry X86ISA::E820Table X86ISA::IntelMP::BaseConfigEntry X86ISA::IntelMP::ConfigTable X86ISA::IntelMP::ExtConfigEntry X86ISA::IntelMP::FloatingPointer X86ISA::IntLine X86ISA::IntSinkPin X86ISA::IntSourcePin X86ISA::ISA X86ISA::SMBios::SMBiosStructure X86ISA::SMBios::SMBiosTable

Public Member Functions

 EventManager (EventManager &em)
 
 EventManager (EventManager *em)
 
 EventManager (EventQueue *eq)
 
EventQueueeventQueue () const
 
void schedule (Event &event, Tick when)
 
void deschedule (Event &event)
 
void reschedule (Event &event, Tick when, bool always=false)
 
void schedule (Event *event, Tick when)
 
void deschedule (Event *event)
 
void reschedule (Event *event, Tick when, bool always=false)
 
void wakeupEventQueue (Tick when=(Tick)-1)
 
void setCurTick (Tick newVal)
 

Protected Attributes

EventQueueeventq
 A pointer to this object's event queue. More...
 

Detailed Description

Definition at line 710 of file eventq.hh.

Constructor & Destructor Documentation

EventManager::EventManager ( EventManager em)
inline

Definition at line 717 of file eventq.hh.

EventManager::EventManager ( EventManager em)
inline

Definition at line 718 of file eventq.hh.

EventManager::EventManager ( EventQueue eq)
inline

Definition at line 719 of file eventq.hh.

Member Function Documentation

void EventManager::deschedule ( Event event)
inline
void EventManager::deschedule ( Event event)
inline

Definition at line 752 of file eventq.hh.

References EventQueue::deschedule(), and eventq.

EventQueue* EventManager::eventQueue ( ) const
inline
void EventManager::reschedule ( Event event,
Tick  when,
bool  always = false 
)
inline
void EventManager::reschedule ( Event event,
Tick  when,
bool  always = false 
)
inline

Definition at line 758 of file eventq.hh.

References eventq, and EventQueue::reschedule().

void EventManager::schedule ( Event event,
Tick  when 
)
inline

Definition at line 728 of file eventq.hh.

References eventq, and EventQueue::schedule().

Referenced by DRAMSim2::accessAndRespond(), FlashDevice::accessDevice(), DRAMCtrl::activateBank(), DRAMCtrl::addToReadQueue(), DRAMCtrl::addToWriteQueue(), BasePixelPump::beginLine(), DRAMCtrl::Rank::checkDrainDone(), IGbE::chkInterrupt(), HDLcd::cmdEnable(), Sinic::Base::cpuIntrPost(), NSGigE::cpuIntrPost(), Shader::dispatch_workgroups(), Pl111::dmaDone(), IdeDisk::doDmaDataRead(), IdeDisk::doDmaDataWrite(), IdeDisk::doDmaRead(), IdeDisk::doDmaTransfer(), IdeDisk::doDmaWrite(), ThermalModel::doStep(), DRAMCtrl::drain(), RubySystem::enqueueRubyEvent(), GarnetSyntheticTraffic::GarnetSyntheticTraffic(), GpuDispatcher::GpuDispatcher(), DmaPort::handleResp(), X86ISA::GpuTLB::handleTranslationReturn(), RubyDirectedTester::hitCallback(), TrafficGen::initState(), Sequencer::insertRequest(), GPUCoalescer::insertRequest(), X86ISA::GpuTLB::issueTLBLookup(), VIPERCoalescer::makeRequest(), GPUCoalescer::makeRequest(), MemTest::MemTest(), ArmISA::TableWalker::nextWalk(), GpuDispatcher::notifyWgCompl(), DVFSHandler::perfLevel(), IGbE::postInterrupt(), DRAMCtrl::prechargeBank(), Ticked::ClockEvent::process(), DRAMCtrl::processNextReqEvent(), DRAMCtrl::Rank::processPowerEvent(), DRAMCtrl::Rank::processRefreshEvent(), DRAMCtrl::processRespondEvent(), Pl111::readFramebuffer(), Cache::recvAtomic(), TrafficGen::recvReqRetry(), MemTest::recvRetry(), StubSlavePort::recvTimingReq(), TLBCoalescer::CpuSidePort::recvTimingReq(), SimpleMemory::recvTimingReq(), X86ISA::Walker::recvTimingResp(), ComputeUnit::DataPort::recvTimingResp(), ElasticTrace::regProbeListeners(), BasePixelPump::renderPixels(), IGbE::restartClock(), PL031::resyncMatch(), EtherTapBase::retransmit(), RubyDirectedTester::RubyDirectedTester(), RubyTester::RubyTester(), NSGigE::rxKick(), CommMonitor::samplePeriodic(), PacketQueue::schedSendEvent(), GpuDispatcher::scheduleDispatch(), DRAMCtrl::Rank::schedulePowerEvent(), DRAMCtrl::Rank::scheduleWakeUpEvent(), EtherBus::send(), ComputeUnit::sendRequest(), DRAMSim2::sendResponse(), EtherTapBase::sendSimulated(), ComputeUnit::sendSyncRequest(), Pl011::setInterrupts(), Intel8254Timer::Counter::CounterEvent::setTo(), BasePixelPump::start(), IdeDisk::startDma(), CommMonitor::startup(), MC146818::startup(), ThermalModel::startup(), DRAMSim2::startup(), DRAMCtrl::Rank::startup(), GarnetSyntheticTraffic::tick(), MemTest::tick(), IGbE::tick(), DRAMSim2::tick(), Root::timeSync(), Root::timeSyncEnable(), X86ISA::GpuTLB::translationReturn(), NSGigE::transmit(), DmaPort::trySendTimingReq(), NSGigE::txKick(), Sinic::Base::unserialize(), GpuDispatcher::unserialize(), Uart8250::unserialize(), PL031::unserialize(), EnergyCtrl::unserialize(), SparcISA::ISA::unserialize(), DVFSHandler::unserialize(), ArchTimer::unserialize(), VGic::unserialize(), TrafficGen::unserialize(), Sinic::Device::unserialize(), IdeDisk::unserialize(), NSGigE::unserialize(), Pl390::unserialize(), Pl111::unserialize(), IGbE::unserialize(), TrafficGen::update(), ArchTimer::updateCounter(), Pl050::updateIntStatus(), TLBCoalescer::updatePhysAddresses(), HDLcd::virtRefresh(), Sequencer::wakeup(), RubyDirectedTester::wakeup(), GPUCoalescer::wakeup(), RubyTester::wakeup(), EnergyCtrl::write(), GpuDispatcher::write(), and MC146818::writeData().

void EventManager::schedule ( Event event,
Tick  when 
)
inline

Definition at line 746 of file eventq.hh.

References eventq, and EventQueue::schedule().

void EventManager::setCurTick ( Tick  newVal)
inline

Definition at line 768 of file eventq.hh.

References eventq, and EventQueue::setCurTick().

Referenced by RubySystem::memWriteback(), and RubySystem::startup().

void EventManager::wakeupEventQueue ( Tick  when = (Tick)-1)
inline

Definition at line 763 of file eventq.hh.

References eventq, and EventQueue::wakeup().

Member Data Documentation

EventQueue* EventManager::eventq
protected

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

Generated on Fri Jun 9 2017 13:04:10 for gem5 by doxygen 1.8.6