OFFIS DCMTK  Version 3.6.0
dvpscu.h
1 /*
2  *
3  * Copyright (C) 1998-2010, OFFIS e.V.
4  * All rights reserved. See COPYRIGHT file for details.
5  *
6  * This software and supporting documentation were developed by
7  *
8  * OFFIS e.V.
9  * R&D Division Health
10  * Escherweg 2
11  * D-26121 Oldenburg, Germany
12  *
13  *
14  * Module: dcmpstat
15  *
16  * Author: Marco Eichelberg
17  *
18  * Purpose:
19  * classes: DVPSCurve
20  *
21  * Last Update: $Author: joergr $
22  * Update Date: $Date: 2010-10-14 13:16:36 $
23  * CVS/RCS Revision: $Revision: 1.9 $
24  * Status: $State: Exp $
25  *
26  * CVS/RCS Log at end of file
27  *
28  */
29 
30 #ifndef DVPSCU_H
31 #define DVPSCU_H
32 
33 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
34 #include "dcmtk/dcmpstat/dvpstyp.h"
35 #include "dcmtk/ofstd/ofstring.h"
36 #include "dcmtk/dcmdata/dctypes.h"
37 #include "dcmtk/dcmdata/dcerror.h"
38 
39 class DcmItem;
40 
44 class DVPSCurve
45 {
46 public:
48  DVPSCurve();
49 
51  DVPSCurve(const DVPSCurve& copy);
52 
57  DVPSCurve *clone() { return new DVPSCurve(*this); }
58 
60  virtual ~DVPSCurve();
61 
72  OFCondition read(DcmItem &dset, Uint8 group);
73 
77  Uint8 getCurveGroup() { return curveGroup; }
78 
82  size_t getNumberOfPoints() { return numberOfPoints; }
83 
87  DVPSCurveType getTypeOfData() { return typeOfData; }
88 
95  OFCondition getPoint(size_t idx, double& x, double& y);
96 
101  const char *getCurveDescription() { return curveDescription.c_str(); }
102 
107  const char *getCurveLabel() { return curveLabel.c_str(); }
108 
113  const char *getCurveAxisUnitsX() { return axisUnitsX.c_str(); }
114 
119  const char *getCurveAxisUnitsY() { return axisUnitsY.c_str(); }
120 
121 private:
123  DVPSCurve& operator=(const DVPSCurve&);
124 
126  Uint8 curveGroup;
130  DVPSCurveType typeOfData;
132  double *curveData;
141 
142 };
143 
144 #endif
145 
146 /*
147  * $Log: dvpscu.h,v $
148  * Revision 1.9 2010-10-14 13:16:36 joergr
149  * Updated copyright header. Added reference to COPYRIGHT file.
150  *
151  * Revision 1.8 2010-10-07 14:31:35 joergr
152  * Removed leading underscore characters from preprocessor symbols (reserved).
153  *
154  * Revision 1.7 2009-11-24 14:12:57 uli
155  * Switched to logging mechanism provided by the "new" oflog module.
156  *
157  * Revision 1.6 2005-12-08 16:03:37 meichel
158  * Changed include path schema for all DCMTK header files
159  *
160  * Revision 1.5 2001/09/26 15:36:09 meichel
161  * Adapted dcmpstat to class OFCondition
162  *
163  * Revision 1.4 2001/06/01 15:50:13 meichel
164  * Updated copyright header
165  *
166  * Revision 1.3 2000/06/02 16:00:44 meichel
167  * Adapted all dcmpstat classes to use OFConsole for log and error output
168  *
169  * Revision 1.2 2000/03/08 16:28:50 meichel
170  * Updated copyright header.
171  *
172  * Revision 1.1 1998/12/22 17:57:04 meichel
173  * Implemented Presentation State interface for overlays,
174  * VOI LUTs, VOI windows, curves. Added test program that
175  * allows to add curve data to DICOM images.
176  *
177  *
178  */
a class representing a list of DICOM elements in which each element has a different tag and elements ...
Definition: dcitem.h:51
DVPSCurveType typeOfData
type of curve data
Definition: dvpscu.h:130
const char * getCurveDescription()
gets the curve description string if present.
Definition: dvpscu.h:101
const char * getCurveAxisUnitsY()
gets the curve axis units string for the Y dimension if present.
Definition: dvpscu.h:119
size_t getNumberOfPoints()
gets the number of points in the curve.
Definition: dvpscu.h:82
virtual ~DVPSCurve()
destructor
OFCondition read(DcmItem &dset, Uint8 group)
reads a curve from a DICOM dataset.
DVPSCurve()
default constructor
OFString axisUnitsY
axis units Y if present
Definition: dvpscu.h:140
Uint8 curveGroup
lower byte of the curve repeating group managed by this object
Definition: dvpscu.h:126
OFCondition getPoint(size_t idx, double &x, double &y)
gets one point from the curve data.
const char * getCurveAxisUnitsX()
gets the curve axis units string for the X dimension if present.
Definition: dvpscu.h:113
OFString curveDescription
curve data description if present
Definition: dvpscu.h:134
the representation of one Curve in a DICOM image.
Definition: dvpscu.h:44
size_t numberOfPoints
number of points in curve data
Definition: dvpscu.h:128
DVPSCurve * clone()
clone method.
Definition: dvpscu.h:57
OFString curveLabel
curve label if present
Definition: dvpscu.h:136
a simple string class that implements a subset of std::string.
Definition: ofstring.h:86
DVPSCurveType getTypeOfData()
gets the type of data in the curve (ROI or POLY).
Definition: dvpscu.h:87
DVPSCurve & operator=(const DVPSCurve &)
private undefined assignment operator
const char * c_str() const
returns a pointer to the initial element of an array of length size()+1 whose first size() elements e...
Definition: ofstring.h:392
Uint8 getCurveGroup()
get group number of curve repeating group managed by this object.
Definition: dvpscu.h:77
const char * getCurveLabel()
gets the curve label string if present.
Definition: dvpscu.h:107
General purpose class for condition codes.
Definition: ofcond.h:305
double * curveData
curve data, converted to double
Definition: dvpscu.h:132
OFString axisUnitsX
axis units X if present
Definition: dvpscu.h:138


Generated on Wed Dec 28 2016 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.8