90 virtual void attach(std::shared_ptr<IObserver> observer) = 0;
101 virtual void detach(std::shared_ptr<IObserver> observer) = 0;
Defines the interface for the Observer pattern component.
The Subject (Publisher) Interface (Abstract Base Class).
Definition ISubject.hxx:38
virtual void detach(std::shared_ptr< IObserver > observer)=0
Detaches an observer from the subject.
virtual ~ISubject()=default
Virtual destructor.
std::vector< IObserver * > observers
Collection of registered observers.
Definition ISubject.hxx:44
virtual void notify(const Event &event) const =0
Notifies all attached observers about an event.
virtual void attach(std::shared_ptr< IObserver > observer)=0
Attaches an observer to the subject.
Service layer components and infrastructure services.
Structure describing an event published by the VCS core.
Definition Event.hxx:30