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 __DVPSRIL_H__
00035
#define __DVPSRIL_H__
00036
00037
#include "osconfig.h"
00038
#include "oflist.h"
00039
#include "dctk.h"
00040
#include "dvpstyp.h"
00041
00042
class DVPSReferencedImage;
00043
class DVPSReferencedSeries_PList;
00044
00051 class DVPSReferencedImage_PList
00052 {
00053
public:
00055
DVPSReferencedImage_PList();
00056
00058
DVPSReferencedImage_PList(
const DVPSReferencedImage_PList& copy);
00059
00064 DVPSReferencedImage_PList *
clone() {
return new DVPSReferencedImage_PList(*
this); }
00065
00067
virtual ~DVPSReferencedImage_PList();
00068
00077
OFCondition read(
DcmItem &dset);
00078
00085
OFCondition write(
DcmItem &dset);
00086
00091
void clear();
00092
00099 OFBool
isValid(
OFString& sopclassuid);
00100
00106
DVPSReferencedImage *
findImageReference(
const char *sopinstanceuid);
00107
00114
void removeFrameReference(
const char *sopinstanceuid,
unsigned long frame,
unsigned long numberOfFrames);
00115
00120
void removeImageReference(
const char *sopinstanceuid);
00121
00132
OFCondition addImageReference(
00133
const char *sopclassUID,
00134
const char *instanceUID,
00135
const char *frames=NULL);
00136
00147
OFCondition addImageReference(
00148
const char *sopclassUID,
00149
const char *instanceUID,
00150
unsigned long frame,
00151 DVPSObjectApplicability applicability);
00152
00165
void removeImageReference(
00166
DVPSReferencedSeries_PList& allReferences,
00167
const char *instanceUID,
00168
unsigned long frame,
00169
unsigned long numberOfFrames,
00170 DVPSObjectApplicability applicability);
00171
00175 size_t
size()
const {
return list_.
size(); }
00176
00184
OFCondition getImageReference(
00185 size_t idx,
00186
OFString& sopclassUID,
00187
OFString& instanceUID,
00188
OFString& frames);
00189
00196 OFBool
isApplicable(
const char *instanceUID,
unsigned long frame);
00197
00205 OFBool
matchesApplicability(
const char *instanceUID,
unsigned long frame, DVPSObjectApplicability applicability);
00206
00212
void setLog(
OFConsole *stream, OFBool verbMode, OFBool dbgMode);
00213
00214
private:
00215
00217
DVPSReferencedImage_PList&
operator=(
const DVPSReferencedImage_PList&);
00218
00221 OFList<DVPSReferencedImage *> list_;
00222
00225 OFConsole *
logstream;
00226
00229 OFBool
verboseMode;
00230
00233 OFBool
debugMode;
00234
00235 };
00236
00237
00238
#endif
00239
00240
00241
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
00273
00274