33 #include "dcmtk/config/osconfig.h"
34 #include "dcmtk/ofstd/ofcast.h"
36 #include "dcmtk/dcmimgle/diobjcou.h"
37 #include "dcmtk/dcmimgle/diovdat.h"
38 #include "dcmtk/dcmimgle/diovpln.h"
39 #include "dcmtk/dcmimgle/diutils.h"
72 const Uint16 alloc = 0,
73 const Uint16 stored = 0,
74 const Uint16 high = 0);
85 const signed long left_pos,
86 const signed long top_pos,
88 const double yfactor);
101 const Uint16 columns,
113 const Uint16 columns,
148 const EM_Overlay mode);
159 const Uint16 pvalue);
177 const EM_Overlay mode);
202 const signed int left_pos,
203 const signed int top_pos);
289 int addPlane(
const unsigned int group,
290 const signed int left_pos,
291 const signed int top_pos,
292 const unsigned int columns,
293 const unsigned int rows,
297 const EM_Overlay mode);
321 const int visible = 0)
const
346 unsigned int &left_pos,
347 unsigned int &top_pos,
349 unsigned int &height,
351 const Uint16 columns,
354 const Uint16 fore = 0xff,
355 const Uint16 back = 0x0);
373 unsigned int &height,
375 const Uint16 fore = 0xff,
376 const Uint16 back = 0x0);
394 unsigned int &height,
395 unsigned long &frames);
424 const int mode)
const;
434 return FirstOverlayGroup + 2 * plane;
DiOverlayData * Data
points to overlay data (provides shared data)
unsigned int getCount() const
get number of overlay planes
virtual ~DiOverlay()
destructor
a class used to represent overlay data (60xx,3000)
int hidePlane(unsigned int plane)
make specified plane invisible
Class to count number of instances (objects created from a certain class).
Uint16 Height
maximum height of all planes
int showAllPlanes()
make all planes visible
unsigned long create6xxx3000PlaneData(Uint8 *&buffer, unsigned int plane, unsigned int &width, unsigned int &height, unsigned long &frames)
create overlay plane data in (6xxx,3000) format.
Interface class to DICOM data management (dcmdata).
void * getFullPlaneData(const unsigned long frame, unsigned int plane, unsigned int &width, unsigned int &height, const int bits=8, const Uint16 fore=0xff, const Uint16 back=0x0)
get overlay plane data as an array of 1/8/16 bit values.
const char * getPlaneLabel(unsigned int plane) const
get label of specified plane
signed long Left
left offset to all planes
Uint16 * Init(const DiOverlay *overlay)
initialize new overlay managing object
int isVisible() const
check whether overlay plane is visible
signed long getLeft() const
get current x-coordinate of overlay origin.
signed long getTop() const
get current y-coordinate of overlay origin.
int hasEmbeddedData() const
check whether there are any overlay planes embedded in the pixel data
int convertToPlaneNumber(unsigned int &plane, const int mode) const
convert given plane or group number to a valid plane number
static const unsigned int FirstOverlayGroup
constant defining the group number of the first overlay plane (0x6000)
DiOverlayPlane ** Planes
pointer to an array of planes
a class representing the DICOM value representation 'Long String' (LO)
const char * getPlaneDescription(unsigned int plane) const
get description of specified plane
unsigned int Count
number of (valid) overlay planes
EM_Overlay getPlaneMode(unsigned int plane) const
get overlay mode of specified plane
int isPlaneVisible(unsigned int plane)
check whether specified plane is currently visible (not hidden)
unsigned int getPlaneGroupNumber(unsigned int plane) const
get group number of specified plane
DiOverlay(const DiDocument *docu=NULL, const Uint16 alloc=0, const Uint16 stored=0, const Uint16 high=0)
constructor
int checkPlane(const unsigned int plane, const int mode=1)
check whether the specified plane is valid.
Class to handle a single overlay plane.
static const unsigned int MaxOverlayCount
constant defining the maximum number of overlay planes (16)
unsigned long Frames
maximum number of frames
unsigned int convertToGroupNumber(const unsigned int plane) const
convert five plane number to corresponding group number
int addPlane(const unsigned int group, const signed int left_pos, const signed int top_pos, const unsigned int columns, const unsigned int rows, const DcmOverlayData &data, const DcmLongString &label, const DcmLongString &description, const EM_Overlay mode)
add plane to list of additional overlay planes
Class to handle a set of overlay planes.
int showPlane(unsigned int plane)
make specified plane visible
int AdditionalPlanes
status, if true planes are added later with addPlane()
int isValidGroupNumber(const unsigned int group) const
check whether given group number is valid.
int hideAllPlanes()
make all planes invisible
Uint16 Width
maximum width of all planes
int hasPlane(unsigned int plane, const int visible=0) const
check whether specified plane exists
int removePlane(const unsigned int group)
remove specified plane from list of additional overlay planes
int placePlane(unsigned int plane, const signed int left_pos, const signed int top_pos)
move plane to a new place
signed long Top
top offset to all planes
Class to handle overlay pixel data.
void * getPlaneData(const unsigned long frame, unsigned int plane, unsigned int &left_pos, unsigned int &top_pos, unsigned int &width, unsigned int &height, EM_Overlay &mode, const Uint16 columns, const Uint16 rows, const int bits=8, const Uint16 fore=0xff, const Uint16 back=0x0)
get overlay plane data as an array of 1/8/16 bit values.