1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- /***************************************************************************
- * E-Com Technology Ltd.
- *
- * ECOMPACS DICOM Network Transport Libraries * Version 0.1 Beta
- ***************************************************************************/
- #ifndef _DICOM_DICOM_DIR_
- #define _DICOM_DICOM_DIR_
- //////////////////////////////////////////////////////////////////////
- // class DicomDir
- class DICOM_API DicomDir : public DICOMFile
- {
- public:
- DicomDir ();
- BOOL ReadDicomDir (const char * FileName);
- BOOL WriteDicomDir (const char * FileName, const char * FileSetID, const char * FileSetDesc);
- BOOL CreateDicomDir (const char * Path, const char * FileSetID, const char * FileSetDesc);
- BOOL AddDicomFile (const char * FileName);
- void SetPath (const char * Path);
- public:
- BOOL m_bAddIcon;
- protected:
- BOOL AddPatient (DICOMVRSet * VRS, DICOMFile * DicomFile);
- BOOL AddStudy (DICOMVRSet * VRS, DICOMFile * DicomFile);
- BOOL AddSeries (DICOMVRSet * VRS, DICOMFile * DicomFile);
- BOOL AddImage (DICOMVRSet * VRS, DICOMFile * DicomFile);
- virtual BOOL BuildMetaHead (void) const;
- BOOL LoadOneSequence (UINT32 Offset, DICOMDataSet * DDS);
- BOOL LoadSQ (DICOMDataSet * DDS, DICOMDataSet * PDDS);
- protected:
- DString m_CurrentPath;
- public:
- class DICOM_API Iterator
- {
- public:
- Iterator (DicomDir & dir);
- Iterator (Iterator & Iter);
- ~Iterator ()
- {
- if (m_pIter)
- delete m_pIter;
- }
- void operator ++ ()
- {
- Next ();
- }
- void operator ++ (int)
- {
- Next ();
- }
- void Next (void)
- {
- (*m_pIter) ++;
- if (*m_pIter)
- m_VRS = m_pIter->Current ();
- }
- DICOMVRSet & operator () (void)
- {
- return *m_VRS;
- }
- DICOMVRSet & Current (void)
- {
- return *m_VRS;
- }
- operator bool ()
- {
- if (! m_pIter)
- return false;
- return (*m_pIter);
- }
- protected:
- Array <DICOMVRSet *>::Iterator * m_pIter;
- DICOMVRSet * m_VRS;
- };
- };
- //////////////////////////////////////////////////////////////////////
- #endif
|