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
00035
#ifndef DSRTCOVL_H
00036
#define DSRTCOVL_H
00037
00038
#include "osconfig.h"
00039
00040
#include "dsrtypes.h"
00041
#include "dsrtcodt.h"
00042
#include "dsrtcosp.h"
00043
#include "dsrtcoto.h"
00044
00045
00046
00047
00048
00049
00052 class DSRTemporalCoordinatesValue
00053 {
00054
00055
friend class DSRContentItem;
00056
00057
public:
00058
00061
DSRTemporalCoordinatesValue();
00062
00066
DSRTemporalCoordinatesValue(
const DSRTypes::E_TemporalRangeType temporalRangeType);
00067
00071
DSRTemporalCoordinatesValue(
const DSRTemporalCoordinatesValue &coordinatesValue);
00072
00075
virtual ~DSRTemporalCoordinatesValue();
00076
00082
DSRTemporalCoordinatesValue &
operator=(
const DSRTemporalCoordinatesValue &coordinatesValue);
00083
00088
virtual void clear();
00089
00095
virtual OFBool
isValid()
const;
00096
00103
virtual OFBool
isShort(
const size_t flags)
const;
00104
00112
virtual OFCondition print(ostream &stream,
00113
const size_t flags)
const;
00114
00120
virtual OFCondition readXML(
const DSRXMLDocument &doc,
00121
DSRXMLCursor cursor);
00122
00129
virtual OFCondition writeXML(ostream &stream,
00130
const size_t flags,
00131
OFConsole *logStream)
const;
00132
00142
virtual OFCondition renderHTML(ostream &docStream,
00143 ostream &annexStream,
00144 size_t &annexNumber,
00145
const size_t flags,
00146
OFConsole *logStream)
const;
00147
00151 inline const DSRTemporalCoordinatesValue &
getValue()
const
00152
{
00153
return *
this;
00154 }
00155
00160
OFCondition getValue(
DSRTemporalCoordinatesValue &coordinatesValue)
const;
00161
00169
OFCondition setValue(
const DSRTemporalCoordinatesValue &coordinatesValue);
00170
00175 inline DSRTypes::E_TemporalRangeType
getTemporalRangeType()
const
00176
{
00177
return TemporalRangeType;
00178 }
00179
00185
OFCondition setTemporalRangeType(
const DSRTypes::E_TemporalRangeType temporalRangeType);
00186
00190 inline DSRReferencedDatetimeList &
getDatetimeList()
00191 {
00192
return DatetimeList;
00193 }
00194
00198 inline DSRReferencedSamplePositionList &
getSamplePositionList()
00199 {
00200
return SamplePositionList;
00201 }
00202
00206 inline DSRReferencedTimeOffsetList &
getTimeOffsetList()
00207 {
00208
return TimeOffsetList;
00209 }
00210
00211
00212
protected:
00213
00217 inline DSRTemporalCoordinatesValue *
getValuePtr()
00218 {
00219
return this;
00220 }
00221
00229
virtual OFCondition read(
DcmItem &dataset,
00230
OFConsole *logStream);
00231
00238
virtual OFCondition write(
DcmItem &dataset,
00239
OFConsole *logStream)
const;
00240
00252 OFBool
checkData(
const DSRTypes::E_TemporalRangeType temporalRangeType,
00253
const DSRReferencedSamplePositionList &samplePositionList,
00254
const DSRReferencedTimeOffsetList &timeOffsetList,
00255
const DSRReferencedDatetimeList &datetimeList,
00256
OFConsole *logStream = NULL)
const;
00257
00258
private:
00259
00261 DSRTypes::E_TemporalRangeType
TemporalRangeType;
00262
00264 DSRReferencedSamplePositionList SamplePositionList;
00266 DSRReferencedTimeOffsetList TimeOffsetList;
00268 DSRReferencedDatetimeList DatetimeList;
00269 };
00270
00271
00272
#endif
00273
00274
00275
00276
00277
00278
00279
00280
00281
00282
00283
00284
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296
00297
00298
00299
00300