openMSX
|
Generic Gang-of-Four Subject class of the Observer pattern, templatized edition. More...
#include <Subject.hh>
Public Member Functions | |
Subject (const Subject &)=delete | |
Subject (Subject &&)=delete | |
Subject & | operator= (const Subject &)=delete |
Subject & | operator= (Subject &&)=delete |
void | attach (Observer< T > &observer) |
void | detach (Observer< T > &observer) |
bool | anyObservers () const |
Protected Member Functions | |
Subject ()=default | |
~Subject () | |
void | notify () const |
Generic Gang-of-Four Subject class of the Observer pattern, templatized edition.
Definition at line 17 of file Subject.hh.
|
delete |
|
delete |
|
protecteddefault |
|
protected |
Definition at line 45 of file Subject.hh.
|
inline |
Definition at line 27 of file Subject.hh.
void openmsx::Subject< T >::attach | ( | Observer< T > & | observer | ) |
Definition at line 54 of file Subject.hh.
Referenced by openmsx::Autofire::Autofire(), openmsx::AY8910::AY8910(), openmsx::CheckedRam::CheckedRam(), openmsx::Display::Display(), openmsx::ImGuiConsole::ImGuiConsole(), openmsx::ImGuiManager::ImGuiManager(), openmsx::Reactor::init(), openmsx::Mixer::Mixer(), openmsx::MSXCPU::MSXCPU(), openmsx::MSXMixer::MSXMixer(), openmsx::MSXMotherBoard::MSXMotherBoard(), openmsx::MSXTurboRPause::MSXTurboRPause(), openmsx::PixelRenderer::PixelRenderer(), openmsx::PostProcessor::PostProcessor(), openmsx::ProbeBreakPoint::ProbeBreakPoint(), openmsx::RealTime::RealTime(), openmsx::ResampledSoundDevice::ResampledSoundDevice(), openmsx::SDLRasterizer::SDLRasterizer(), openmsx::SDLVideoSystem::SDLVideoSystem(), openmsx::SpeedManager::SpeedManager(), openmsx::ThrottleManager::ThrottleManager(), openmsx::V9990CmdEngine::V9990CmdEngine(), openmsx::V9990PixelRenderer::V9990PixelRenderer(), openmsx::V9990SDLRasterizer::V9990SDLRasterizer(), openmsx::VDP::VDP(), openmsx::VideoLayer::VideoLayer(), openmsx::VisibleSurface::VisibleSurface(), and openmsx::WavAudioInput::WavAudioInput().
void openmsx::Subject< T >::detach | ( | Observer< T > & | observer | ) |
Definition at line 60 of file Subject.hh.
References move_pop_back(), and rfind_unguarded().
Referenced by openmsx::Autofire::~Autofire(), openmsx::AY8910::~AY8910(), openmsx::CheckedRam::~CheckedRam(), openmsx::Display::~Display(), openmsx::FilePool::~FilePool(), openmsx::GlobalSettings::~GlobalSettings(), openmsx::ImGuiConsole::~ImGuiConsole(), openmsx::ImGuiManager::~ImGuiManager(), openmsx::Mixer::~Mixer(), openmsx::MSXCPU::~MSXCPU(), openmsx::MSXMixer::~MSXMixer(), openmsx::MSXMotherBoard::~MSXMotherBoard(), openmsx::MSXTurboRPause::~MSXTurboRPause(), openmsx::PixelRenderer::~PixelRenderer(), openmsx::PostProcessor::~PostProcessor(), openmsx::ProbeBreakPoint::~ProbeBreakPoint(), openmsx::Reactor::~Reactor(), openmsx::RealTime::~RealTime(), openmsx::ResampledSoundDevice::~ResampledSoundDevice(), openmsx::SDLRasterizer::~SDLRasterizer(), openmsx::SDLVideoSystem::~SDLVideoSystem(), openmsx::SpeedManager::~SpeedManager(), openmsx::ThrottleManager::~ThrottleManager(), openmsx::V9990CmdEngine::~V9990CmdEngine(), openmsx::V9990PixelRenderer::~V9990PixelRenderer(), openmsx::V9990SDLRasterizer::~V9990SDLRasterizer(), openmsx::VDP::~VDP(), openmsx::VideoLayer::~VideoLayer(), openmsx::VisibleSurface::~VisibleSurface(), and openmsx::WavAudioInput::~WavAudioInput().
|
protected |
Definition at line 71 of file Subject.hh.
References ranges::remove().
|
delete |
|
delete |