GDCM
2.2.3
|
00001 /*========================================================================= 00002 00003 Program: GDCM (Grassroots DICOM). A DICOM library 00004 00005 Copyright (c) 2006-2011 Mathieu Malaterre 00006 All rights reserved. 00007 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notice for more information. 00012 00013 =========================================================================*/ 00014 #ifndef GDCMDATASETEVENT_H 00015 #define GDCMDATASETEVENT_H 00016 00017 #include "gdcmEvent.h" 00018 #include "gdcmDataSet.h" 00019 00020 namespace gdcm 00021 { 00022 00029 class DataSetEvent : public AnyEvent 00030 { 00031 public: 00032 typedef DataSetEvent Self; 00033 typedef AnyEvent Superclass; 00034 DataSetEvent(DataSet const *ds = NULL):m_DataSet(ds) {} 00035 virtual ~DataSetEvent() {} 00036 virtual const char * GetEventName() const { return "DataSetEvent"; } 00037 virtual bool CheckEvent(const ::gdcm::Event* e) const 00038 { return (dynamic_cast<const Self*>(e) == NULL ? false : true) ; } 00039 virtual ::gdcm::Event* MakeObject() const 00040 { return new Self; } 00041 DataSetEvent(const Self&s) : AnyEvent(s){}; 00042 00043 DataSet const & GetDataSet() const { return *m_DataSet; } 00044 private: 00045 void operator=(const Self&); 00046 const DataSet *m_DataSet; 00047 }; 00048 00049 00050 } // end namespace gdcm 00051 00052 #endif //GDCMANONYMIZEEVENT_H