GDCM 3.0.24
gdcmImageChangeTransferSyntax.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: GDCM (Grassroots DICOM). A DICOM library
4
5 Copyright (c) 2006-2011 Mathieu Malaterre
6 All rights reserved.
7 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
8
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the above copyright notice for more information.
12
13=========================================================================*/
14#ifndef GDCMIMAGECHANGETRANSFERSYNTAX_H
15#define GDCMIMAGECHANGETRANSFERSYNTAX_H
16
18#include "gdcmTransferSyntax.h"
19
20namespace gdcm
21{
22
23class DataElement;
24class ImageCodec;
40{
41public:
42 ImageChangeTransferSyntax():TS(TransferSyntax::TS_END),Force(false),CompressIconImage(false),UserCodec(nullptr) {}
44
46 void SetTransferSyntax(const TransferSyntax &ts) { TS = ts; }
48 const TransferSyntax &GetTransferSyntax() const { return TS; }
49
51 bool Change();
52
55 void SetCompressIconImage(bool b) { CompressIconImage = b; }
56
61 void SetForce( bool f ) { Force = f; }
62
68 void SetUserCodec(ImageCodec *ic) { UserCodec = ic; }
69
70protected:
71 bool TryJPEGCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output);
72 bool TryJPEG2000Codec(const DataElement &pixelde, Bitmap const &input, Bitmap &output);
73 bool TryJPEGLSCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output);
74 bool TryRAWCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output);
75 bool TryRLECodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output);
76
77private:
79 bool Force;
80 bool CompressIconImage;
81
82 ImageCodec *UserCodec;
83};
84
90} // end namespace gdcm
91
92#endif //GDCMIMAGECHANGETRANSFERSYNTAX_H
Bitmap class.
Definition gdcmBitmap.h:39
Class to represent a Data Element either Implicit or Explicit.
Definition gdcmDataElement.h:59
ImageChangeTransferSyntax class.
Definition gdcmImageChangeTransferSyntax.h:40
bool TryJPEG2000Codec(const DataElement &pixelde, Bitmap const &input, Bitmap &output)
void SetUserCodec(ImageCodec *ic)
Definition gdcmImageChangeTransferSyntax.h:68
void SetCompressIconImage(bool b)
Definition gdcmImageChangeTransferSyntax.h:55
bool TryJPEGLSCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output)
const TransferSyntax & GetTransferSyntax() const
Get Transfer Syntax.
Definition gdcmImageChangeTransferSyntax.h:48
void SetTransferSyntax(const TransferSyntax &ts)
Set target Transfer Syntax.
Definition gdcmImageChangeTransferSyntax.h:46
bool TryJPEGCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output)
bool TryRAWCodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output)
ImageChangeTransferSyntax()
Definition gdcmImageChangeTransferSyntax.h:42
bool TryRLECodec(const DataElement &pixelde, Bitmap const &input, Bitmap &output)
void SetForce(bool f)
Definition gdcmImageChangeTransferSyntax.h:61
ImageCodec.
Definition gdcmImageCodec.h:31
ImageToImageFilter class.
Definition gdcmImageToImageFilter.h:28
Class to manipulate Transfer Syntax.
Definition gdcmTransferSyntax.h:40
#define GDCM_EXPORT
Definition gdcmWin32.h:34
Definition gdcmASN1.h:21