gdcmSubject.h
Go to the documentation of this file.
/*=========================================================================
Program: GDCM (Grassroots DICOM). A DICOM library
Copyright (c) 2006-2011 Mathieu Malaterre
All rights reserved.
See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#ifndef GDCMSUBJECT_H
#define GDCMSUBJECT_H
#include "gdcmObject.h"
namespace gdcm
{
class Event;
class Command;
class SubjectInternals;
class GDCM_EXPORT Subject : public Object
{
public:
Subject();
~Subject() override;
unsigned long AddObserver(const Event & event, Command *);
unsigned long AddObserver(const Event & event, Command *) const;
Command* GetCommand(unsigned long tag);
void InvokeEvent( const Event & );
void InvokeEvent( const Event & ) const;
void RemoveObserver(unsigned long tag);
void RemoveAllObservers();
bool HasObserver( const Event & event ) const;
protected:
private:
SubjectInternals *Internals;
private:
};
} // end namespace gdcm
#endif //GDCMSUBJECT_H
gdcm::Command
Command superclass for callback/observer methods.
Definition gdcmCommand.h:28
gdcm::Event
superclass for callback/observer methods
Definition gdcmEvent.h:27
gdcm::Object::Object
Object()
Definition gdcmObject.h:42
gdcm::Subject::RemoveObserver
void RemoveObserver(unsigned long tag)
gdcm::Subject::InvokeEvent
void InvokeEvent(const Event &)
gdcm::Subject::GetCommand
Command * GetCommand(unsigned long tag)
gdcm::Subject::InvokeEvent
void InvokeEvent(const Event &) const
gdcm::Subject::RemoveAllObservers
void RemoveAllObservers()
gdcm::Subject::AddObserver
unsigned long AddObserver(const Event &event, Command *) const
gdcm::Subject::AddObserver
unsigned long AddObserver(const Event &event, Command *)
gdcm::Subject::~Subject
~Subject() override
gdcm::Subject::HasObserver
bool HasObserver(const Event &event) const
gdcm::Subject::Subject
Subject()
gdcmObject.h
GDCM_EXPORT
#define GDCM_EXPORT
Definition gdcmWin32.h:34
gdcm
Definition gdcmASN1.h:21