OFFIS DCMTK  Version 3.6.0
dsrcomvl.h
1 /*
2  *
3  * Copyright (C) 2000-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: dcmsr
15  *
16  * Author: Joerg Riesmeier
17  *
18  * Purpose:
19  * classes: DSRCompositeReferenceValue
20  *
21  * Last Update: $Author: joergr $
22  * Update Date: $Date: 2010-10-14 13:16:32 $
23  * CVS/RCS Revision: $Revision: 1.11 $
24  * Status: $State: Exp $
25  *
26  * CVS/RCS Log at end of file
27  *
28  */
29 
30 
31 #ifndef DSRCOMVL_H
32 #define DSRCOMVL_H
33 
34 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
35 
36 #include "dcmtk/dcmsr/dsrtypes.h"
37 
38 #include "dcmtk/ofstd/ofstring.h"
39 
40 
41 /*---------------------*
42  * class declaration *
43  *---------------------*/
44 
48 {
49  // allow access to getValuePtr()
50  friend class DSRContentItem;
51 
52  public:
53 
57 
65  DSRCompositeReferenceValue(const OFString &sopClassUID,
66  const OFString &sopInstanceUID);
67 
72 
76 
82 
86  virtual void clear();
87 
93  virtual OFBool isValid() const;
94 
99  virtual OFBool isEmpty() const;
100 
108  virtual OFCondition print(STD_NAMESPACE ostream &stream,
109  const size_t flags) const;
110 
116  virtual OFCondition readXML(const DSRXMLDocument &doc,
117  DSRXMLCursor cursor);
118 
124  virtual OFCondition writeXML(STD_NAMESPACE ostream &stream,
125  const size_t flags) const;
126 
136  virtual OFCondition readSequence(DcmItem &dataset,
137  const OFString &type);
138 
144  virtual OFCondition writeSequence(DcmItem &dataset) const;
145 
154  virtual OFCondition renderHTML(STD_NAMESPACE ostream &docStream,
155  STD_NAMESPACE ostream &annexStream,
156  size_t &annexNumber,
157  const size_t flags) const;
158 
162  inline const OFString &getSOPClassUID() const
163  {
164  return SOPClassUID;
165  }
166 
170  inline const OFString &getSOPInstanceUID() const
171  {
172  return SOPInstanceUID;
173  }
174 
178  inline const DSRCompositeReferenceValue &getValue() const
179  {
180  return *this;
181  }
182 
187  OFCondition getValue(DSRCompositeReferenceValue &referenceValue) const;
188 
195  OFCondition setValue(const DSRCompositeReferenceValue &referenceValue);
196 
204  OFCondition setReference(const OFString &sopClassUID,
205  const OFString &sopInstanceUID);
206 
213  OFCondition setSOPClassUID(const OFString &sopClassUID);
214 
221  OFCondition setSOPInstanceUID(const OFString &sopInstanceUID);
222 
223 
224  protected:
225 
230  {
231  return this;
232  }
233 
238  virtual OFCondition readItem(DcmItem &dataset);
239 
244  virtual OFCondition writeItem(DcmItem &dataset) const;
245 
253  virtual OFBool checkSOPClassUID(const OFString &sopClassUID) const;
254 
261  virtual OFBool checkSOPInstanceUID(const OFString &sopInstanceUID) const;
262 
267 };
268 
269 
270 #endif
271 
272 
273 /*
274  * CVS/RCS Log:
275  * $Log: dsrcomvl.h,v $
276  * Revision 1.11 2010-10-14 13:16:32 joergr
277  * Updated copyright header. Added reference to COPYRIGHT file.
278  *
279  * Revision 1.10 2009-10-13 14:57:50 uli
280  * Switched to logging mechanism provided by the "new" oflog module.
281  *
282  * Revision 1.9 2007-11-15 16:33:30 joergr
283  * Added support for output in XHTML 1.1 format.
284  *
285  * Revision 1.8 2006/08/15 16:40:03 meichel
286  * Updated the code in module dcmsr to correctly compile when
287  * all standard C++ classes remain in namespace std.
288  *
289  * Revision 1.7 2005/12/08 16:04:55 meichel
290  * Changed include path schema for all DCMTK header files
291  *
292  * Revision 1.6 2003/08/07 18:01:42 joergr
293  * Removed libxml dependency from header files.
294  *
295  * Revision 1.5 2003/08/07 12:22:37 joergr
296  * Added readXML functionality.
297  *
298  * Revision 1.4 2001/09/26 13:04:05 meichel
299  * Adapted dcmsr to class OFCondition
300  *
301  * Revision 1.3 2001/06/01 15:50:59 meichel
302  * Updated copyright header
303  *
304  * Revision 1.2 2000/11/01 16:13:55 joergr
305  * Added support for conversion to XML.
306  *
307  * Revision 1.1 2000/10/20 10:13:26 joergr
308  * Renamed class DSRReferenceValue to DSRCompositeReferenceValue.
309  *
310  * Revision 1.4 2000/10/19 16:02:37 joergr
311  * Renamed some set methods.
312  *
313  * Revision 1.3 2000/10/18 17:06:00 joergr
314  * Added methods allowing direct access to certain content item values.
315  * Added doc++ comments.
316  * Made some functions inline.
317  *
318  * Revision 1.2 2000/10/16 11:57:23 joergr
319  * Added methods allowing direct access to certain content item values.
320  *
321  * Revision 1.1 2000/10/13 07:49:30 joergr
322  * Added new module 'dcmsr' providing access to DICOM structured reporting
323  * documents (supplement 23). Doc++ documentation not yet completed.
324  *
325  *
326  */
Interface class for content items.
Definition: dsrcitem.h:56
DSRCompositeReferenceValue()
default contructor
a class representing a list of DICOM elements in which each element has a different tag and elements ...
Definition: dcitem.h:51
Class for XML documents.
Definition: dsrxmld.h:63
OFCondition setSOPInstanceUID(const OFString &sopInstanceUID)
set SOP instance UID value.
const OFString & getSOPInstanceUID() const
get SOP instance UID
Definition: dsrcomvl.h:170
virtual OFCondition readXML(const DSRXMLDocument &doc, DSRXMLCursor cursor)
read reference value from XML document
virtual OFBool isEmpty() const
check whether the current reference value is empty.
OFCondition setValue(const DSRCompositeReferenceValue &referenceValue)
set composite reference value.
const DSRCompositeReferenceValue & getValue() const
get reference to composite reference value
Definition: dsrcomvl.h:178
virtual OFCondition readSequence(DcmItem &dataset, const OFString &type)
read referenced SOP sequence from dataset.
OFCondition setSOPClassUID(const OFString &sopClassUID)
set SOP class UID value.
virtual OFCondition print(STD_NAMESPACE ostream &stream, const size_t flags) const
print reference value.
virtual OFCondition writeItem(DcmItem &dataset) const
write reference value to dataset
virtual OFBool checkSOPClassUID(const OFString &sopClassUID) const
check the specified SOP class UID for validity.
const OFString & getSOPClassUID() const
get SOP class UID
Definition: dsrcomvl.h:162
virtual ~DSRCompositeReferenceValue()
destructor
Class for composite reference values.
Definition: dsrcomvl.h:47
DSRCompositeReferenceValue & operator=(const DSRCompositeReferenceValue &referenceValue)
assignment operator
virtual OFCondition readItem(DcmItem &dataset)
read reference value from dataset
a simple string class that implements a subset of std::string.
Definition: ofstring.h:86
virtual OFBool isValid() const
check whether the current reference value is valid.
Class for XML document cursors.
Definition: dsrxmlc.h:73
DSRCompositeReferenceValue * getValuePtr()
get pointer to reference value
Definition: dsrcomvl.h:229
virtual OFCondition renderHTML(STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &annexStream, size_t &annexNumber, const size_t flags) const
render composite reference value in HTML/XHTML format
OFString SOPInstanceUID
reference SOP instance UID (VR=UI, type 1)
Definition: dsrcomvl.h:266
virtual OFBool checkSOPInstanceUID(const OFString &sopInstanceUID) const
check the specified SOP instance UID for validity.
virtual void clear()
clear all internal variables.
virtual OFCondition writeXML(STD_NAMESPACE ostream &stream, const size_t flags) const
write reference value in XML format
virtual OFCondition writeSequence(DcmItem &dataset) const
write referenced SOP sequence to dataset.
General purpose class for condition codes.
Definition: ofcond.h:305
OFCondition setReference(const OFString &sopClassUID, const OFString &sopInstanceUID)
set SOP class UID and SOP instance UID value.
OFString SOPClassUID
reference SOP class UID (VR=UI, type 1)
Definition: dsrcomvl.h:264


Generated on Sun Aug 23 2015 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.9.1