00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef __DVPSCU_H__
00035 #define __DVPSCU_H__
00036
00037 #include "osconfig.h"
00038 #include "dvpstyp.h"
00039 #include "ofstring.h"
00040 #include "dctypes.h"
00041 #include "dcerror.h"
00042
00043 class DcmItem;
00044 class OFConsole;
00045
00049 class DVPSCurve
00050 {
00051 public:
00053 DVPSCurve();
00054
00056 DVPSCurve(const DVPSCurve& copy);
00057
00062 DVPSCurve *clone() { return new DVPSCurve(*this); }
00063
00065 virtual ~DVPSCurve();
00066
00077 OFCondition read(DcmItem &dset, Uint8 group);
00078
00082 Uint8 getCurveGroup() { return curveGroup; }
00083
00087 size_t getNumberOfPoints() { return numberOfPoints; }
00088
00092 DVPSCurveType getTypeOfData() { return typeOfData; }
00093
00100 OFCondition getPoint(size_t idx, double& x, double& y);
00101
00106 const char *getCurveDescription() { return curveDescription.c_str(); }
00107
00112 const char *getCurveLabel() { return curveLabel.c_str(); }
00113
00118 const char *getCurveAxisUnitsX() { return axisUnitsX.c_str(); }
00119
00124 const char *getCurveAxisUnitsY() { return axisUnitsY.c_str(); }
00125
00131 void setLog(OFConsole *stream, OFBool verbMode, OFBool dbgMode);
00132
00133 private:
00135 DVPSCurve& operator=(const DVPSCurve&);
00136
00138 Uint8 curveGroup;
00140 size_t numberOfPoints;
00142 DVPSCurveType typeOfData;
00144 double *curveData;
00146 OFString curveDescription;
00148 OFString curveLabel;
00150 OFString axisUnitsX;
00152 OFString axisUnitsY;
00153
00156 OFConsole *logstream;
00157
00160 OFBool verboseMode;
00161
00164 OFBool debugMode;
00165 };
00166
00167 #endif
00168
00169
00170
00171
00172
00173
00174
00175
00176
00177
00178
00179
00180
00181
00182
00183
00184
00185
00186
00187
00188
00189
00190