/usr/include/dcmtk/dcmpstat/dvpsgr.h is in libdcmtk-dev 3.6.1~20150924-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | /*
*
* Copyright (C) 1998-2012, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
*
* OFFIS e.V.
* R&D Division Health
* Escherweg 2
* D-26121 Oldenburg, Germany
*
*
* Module: dcmpstat
*
* Author: Marco Eichelberg
*
* Purpose:
* classes: DVPSGraphicObject
*
*/
#ifndef DVPSGR_H
#define DVPSGR_H
#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
#include "dcmtk/dcmdata/dctk.h"
#include "dcmtk/dcmpstat/dvpstyp.h"
#include "dcmtk/dcmpstat/dpdefine.h"
/** an item of the graphic object sequence in a presentation state (internal use only).
* This class manages the data structures comprising one item
* of the Graphic Object Sequence which is contained
* in the Graphic Annotation Sequence in a Presentation State object.
*/
class DCMTK_DCMPSTAT_EXPORT DVPSGraphicObject
{
public:
/// default constructor
DVPSGraphicObject();
/// copy constructor
DVPSGraphicObject(const DVPSGraphicObject& copy);
/** clone method.
* @return a pointer to a new DVPSGraphicObject object containing
* a copy of this object.
*/
DVPSGraphicObject *clone() { return new DVPSGraphicObject(*this); }
/// destructor
virtual ~DVPSGraphicObject();
/** reads a graphic object from a DICOM dataset.
* The DICOM elements of the Graphic Object item are copied
* from the dataset to this object.
* The completeness of the item (presence of all required elements,
* value multiplicity) is checked.
* If this method returns an error code, the object is in undefined state afterwards.
* @param dset the item of the GraphicObjectSequence from which the data is to be read
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition read(DcmItem &dset);
/** writes the graphic object managed by this object to a DICOM dataset.
* Copies of the DICOM element managed by this object are inserted into
* the DICOM dataset.
* @param dset the the item of the GraphicObjectSequence to which the data is written
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition write(DcmItem &dset);
/** gets the graphic annotation units.
* @return annotation units
*/
DVPSannotationUnit getAnnotationUnits();
/** gets the number of graphic points.
* @return number of graphic points
*/
size_t getNumberOfPoints();
/** gets one point from the graphic data.
* @param idx index of the graphic point, must be < getNumberOfPoints();
* @param x upon success the x value of the point is returned in this parameter
* @param y upon success the y value of the point is returned in this parameter
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition getPoint(size_t idx, Float32& x, Float32& y);
/** gets the graphic type of this graphic object.
* @return graphic type
*/
DVPSGraphicType getGraphicType();
/** checks if the graphic is filled
* @return OFTrue if graphic is filled.
*/
OFBool isFilled();
/** sets the graphic data for this graphic object.
* @param number number of graphic points in parameter "data"
* @param data pointer to an array of Float32 values with a size of (at least)
* 2*number. The values are copied into the graphic object.
* @param unit the graphic annotation units for this data.
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition setData(size_t number, const Float32 *data, DVPSannotationUnit unit);
/** sets the graphic type for the graphic object
* @param gtype the graphic type
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition setGraphicType(DVPSGraphicType gtype);
/** sets the graphic filled status for the graphic object
* @param isFilled OFTrue if graphic is filled, OFFalse otherwise.
* @return EC_Normal if successful, an error code otherwise.
*/
OFCondition setFilled(OFBool filled);
private:
/// private undefined assignment operator
DVPSGraphicObject& operator=(const DVPSGraphicObject&);
/// VR=CS, VM=1, Type 1
DcmCodeString graphicAnnotationUnits;
/// VR=US, VM=1, Type 1
DcmUnsignedShort numberOfGraphicPoints;
/// VR=FL, VM=2-n, Type 1
DcmFloatingPointSingle graphicData;
/// VR=CS, VM=1, Type 1
DcmCodeString graphicType;
/// VR=CS, VM=1, Type 1c
DcmCodeString graphicFilled;
};
#endif
|