openMSX
|
Generic Gang-of-Four Subject class of the Observer pattern, templatized edition. More...
#include <Subject.hh>
Public Member Functions | |
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.
|
protecteddefault |
|
protected |
Definition at line 40 of file Subject.hh.
References ranges::copy().
|
inline |
Definition at line 22 of file Subject.hh.
void openmsx::Subject< T >::attach | ( | Observer< T > & | observer | ) |
Definition at line 50 of file Subject.hh.
Referenced by openmsx::Autofire::Autofire(), openmsx::CheckedRam::CheckedRam(), openmsx::Display::Display(), openmsx::FBPostProcessor< Pixel >::FBPostProcessor(), openmsx::GLPostProcessor::GLPostProcessor(), openmsx::Reactor::init(), openmsx::Mixer::Mixer(), openmsx::MSXCPU::MSXCPU(), openmsx::MSXMixer::MSXMixer(), openmsx::MSXMotherBoard::MSXMotherBoard(), openmsx::MSXTurboRPause::MSXTurboRPause(), openmsx::PixelRenderer::PixelRenderer(), openmsx::ProbeBreakPoint::ProbeBreakPoint(), openmsx::RealTime::RealTime(), openmsx::ResampledSoundDevice::ResampledSoundDevice(), openmsx::SDLGLVisibleSurface::SDLGLVisibleSurface(), openmsx::SDLRasterizer< Pixel >::SDLRasterizer(), openmsx::SDLVideoSystem::SDLVideoSystem(), openmsx::SpeedManager::SpeedManager(), openmsx::ThrottleManager::ThrottleManager(), openmsx::V9990CmdEngine::V9990CmdEngine(), openmsx::V9990PixelRenderer::V9990PixelRenderer(), openmsx::V9990SDLRasterizer< Pixel >::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 56 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::GLPostProcessor::~GLPostProcessor(), openmsx::Mixer::~Mixer(), openmsx::MSXCPU::~MSXCPU(), openmsx::MSXMixer::~MSXMixer(), openmsx::MSXMotherBoard::~MSXMotherBoard(), openmsx::MSXTurboRPause::~MSXTurboRPause(), openmsx::PixelRenderer::~PixelRenderer(), openmsx::ProbeBreakPoint::~ProbeBreakPoint(), openmsx::Reactor::~Reactor(), openmsx::RealTime::~RealTime(), openmsx::ResampledSoundDevice::~ResampledSoundDevice(), openmsx::SDLGLVisibleSurface::~SDLGLVisibleSurface(), openmsx::SDLVideoSystem::~SDLVideoSystem(), openmsx::SpeedManager::~SpeedManager(), openmsx::ThrottleManager::~ThrottleManager(), openmsx::V9990CmdEngine::~V9990CmdEngine(), openmsx::V9990PixelRenderer::~V9990PixelRenderer(), openmsx::VDP::~VDP(), openmsx::VideoLayer::~VideoLayer(), openmsx::VisibleSurface::~VisibleSurface(), and openmsx::WavAudioInput::~WavAudioInput().
|
protected |
Definition at line 67 of file Subject.hh.
References ranges::remove().