+// Informations contained in the parser
+ virtual bool IsReadable();
+
+ /// Returns a pointer to the gdcmDicomDirMeta for this DICOMDIR.
+ gdcmDicomDirMeta* GetDicomDirMeta() { return metaElems; };
+
+ /// Returns the PATIENT chained List for this DICOMDIR.
+ ListDicomDirPatient &GetDicomDirPatients() { return patients; };
+
+// Parsing
+ void ParseDirectory();
+
+ void SetStartMethod(gdcmMethod*, void* = NULL, gdcmMethod* = NULL);
+ void SetStartMethodArgDelete(gdcmMethod*);
+ void SetProgressMethod(gdcmMethod* ,void* = NULL, gdcmMethod* = NULL);
+ void SetProgressMethodArgDelete(gdcmMethod*);
+ void SetEndMethod(gdcmMethod*, void* = NULL,gdcmMethod* = NULL);
+ void SetEndMethodArgDelete(gdcmMethod*);
+
+ /// GetProgress GetProgress
+ float GetProgress() { return progress; };
+
+ /// AbortProgress AbortProgress
+ void AbortProgress() { abort = true; };
+
+ /// IsAborted IsAborted
+ bool IsAborted() { return abort; };
+
+// Adding
+ gdcmDicomDirMeta* NewMeta();
+ gdcmDicomDirPatient* NewPatient();
+
+// Write
+ bool WriteDicomDir(std::string const & fileName);