1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /***************************************************************************
- * E-Com Technology Ltd.
- *
- * ECOMPACS DICOM Network Transport Libraries * Version 0.1 Beta
- ***************************************************************************/
- #ifndef _DICOM_IMAGE_
- #define _DICOM_IMAGE_
- class ImageProcess;
- class DICOMImageIcon;
- class RealImage;
- //////////////////////////////////////////////////////////////////////
- // class DICOMImage
- class DICOM_API DICOMImage : public DICOMFile
- {
- public:
- DICOMImage ();
- DICOMImage (const DICOMImage & Image);
- DICOMImage (const DICOMFile & File);
- DICOMImage (const DICOMVRSet & VRSet);
- DICOMImage (const char * FullFileName);
- virtual ~DICOMImage ();
- BOOL IsValid (void) const ;
- virtual BOOL FixMe (void);
- BOOL ReleasePixelData (void);
- void * GetPixelAddress (int FrameNumber) const ;
- UINT32 GetPixelLength (int FrameNumber) const ;
- BOOL CopyToPixelBuffer (void * p, UINT32 l, int f, UINT32 w, UINT32 h, UINT16 ba, UINT16 bs, UINT16 hb);
- BOOL ConvertTo (const UID & TrnsynUID);
- BOOL ConvertToRaw (void);
- BOOL FormatTo (ImageProcess * pImgProc);
- BOOL FormatTo (RealImage * pRealImage);
- int GetNumberOfFrames (void) const;
- void AttachIcon (DICOMImageIcon * Icon);
- DICOMImageIcon * GetAttachedIcon (void) { return AttachedIcon ; };
- public:
- long GetReferenceCount() const { return ReferenceCount; }
- void IncReferenceCount() { ReferenceCount++; }
- void DecReferenceCount() { ReferenceCount--; if (ReferenceCount<0) ReferenceCount=0; }
- protected:
- void Init (void)
- {
- AttachedIcon = NULL;
- ReferenceCount = 0;
- }
- BOOL ConvertToKnowFormat (const UID & TrnsynUID);
- BOOL ConvertToUnknowFormat (const UID & TrnsynUID);
- protected:
- DICOMImageIcon * AttachedIcon;
- long ReferenceCount;
- private:
- friend ImageProcess;
- friend DICOMImageIcon;
- friend void DumpDicomImage (const DICOMImage &);
- };
- #endif
|