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 __DVPSTX_H__
00035 #define __DVPSTX_H__
00036
00037 #include "dcmtk/config/osconfig.h"
00038 #include "dcmtk/dcmdata/dctk.h"
00039 #include "dcmtk/dcmpstat/dvpstyp.h"
00040
00047 class DVPSTextObject
00048 {
00049 public:
00051 DVPSTextObject();
00052
00054 DVPSTextObject(const DVPSTextObject& copy);
00055
00060 DVPSTextObject *clone() { return new DVPSTextObject(*this); }
00061
00063 virtual ~DVPSTextObject();
00064
00074 OFCondition read(DcmItem &dset);
00075
00082 OFCondition write(DcmItem &dset);
00083
00087 OFBool haveAnchorPoint();
00088
00092 OFBool haveBoundingBox();
00093
00101 OFCondition setAnchorPoint(double x, double y, DVPSannotationUnit unit, OFBool isVisible);
00102
00112 OFCondition setBoundingBox(double TLHC_x, double TLHC_y, double BRHC_x,
00113 double BRHC_y, DVPSannotationUnit unit, DVPSTextJustification justification);
00114
00119 OFCondition setText(const char *text);
00120
00125 void removeAnchorPoint();
00126
00131 void removeBoundingBox();
00132
00136 const char *getText();
00137
00142 double getBoundingBoxTLHC_x();
00143
00148 double getBoundingBoxTLHC_y();
00149
00154 double getBoundingBoxBRHC_x();
00155
00160 double getBoundingBoxBRHC_y();
00161
00166 DVPSannotationUnit getBoundingBoxAnnotationUnits();
00167
00172 DVPSTextJustification getBoundingBoxHorizontalJustification();
00173
00178 double getAnchorPoint_x();
00179
00184 double getAnchorPoint_y();
00185
00190 OFBool anchorPointIsVisible();
00191
00196 DVPSannotationUnit getAnchorPointAnnotationUnits();
00197
00203 void setLog(OFConsole *stream, OFBool verbMode, OFBool dbgMode);
00204
00205 private:
00208 DVPSTextObject& operator=(const DVPSTextObject&);
00209
00211 DcmCodeString boundingBoxAnnotationUnits;
00213 DcmCodeString anchorPointAnnotationUnits;
00215 DcmShortText unformattedTextValue;
00217 DcmFloatingPointSingle boundingBoxTLHC;
00219 DcmFloatingPointSingle boundingBoxBRHC;
00221 DcmCodeString boundingBoxTextHorizontalJustification;
00223 DcmFloatingPointSingle anchorPoint;
00225 DcmCodeString anchorPointVisibility;
00226
00229 OFConsole *logstream;
00230
00233 OFBool verboseMode;
00234
00237 OFBool debugMode;
00238
00239 };
00240
00241 #endif
00242
00243
00244
00245
00246
00247
00248
00249
00250
00251
00252
00253
00254
00255
00256
00257
00258
00259
00260
00261
00262
00263
00264
00265
00266
00267
00268
00269
00270
00271
00272