From 0034c2a265cd6ad621cf11a494b0cdca072e6814 Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 4 Feb 2010 10:41:29 -0500 Subject: [PATCH 01/12] integration of JasPer for decoding JPEG2000-compressed dicom images --- config/Makefile.def.in | 1 + dcmjpeg/apps/Makefile.in | 2 +- dcmjpeg/include/dcmtk/dcmjpeg/djdecjp2lol.h | 53 ++++++++ dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h | 4 + dcmjpeg/include/dcmtk/dcmjpeg/djdjp2.h | 114 ++++++++++++++++++ dcmjpeg/include/dcmtk/dcmjpeg/djutils.h | 8 ++ dcmjpeg/libsrc/Makefile.in | 3 +- dcmjpeg/libsrc/djcodecd.cc | 8 +- dcmjpeg/libsrc/djdecjp2lol.cc | 47 ++++++++ dcmjpeg/libsrc/djdecode.cc | 8 ++ dcmjpeg/libsrc/djdjp2.cc | 127 ++++++++++++++++++++ dcmjpeg/libsrc/djutils.cc | 8 ++ 12 files changed, 380 insertions(+), 3 deletions(-) create mode 100644 dcmjpeg/include/dcmtk/dcmjpeg/djdecjp2lol.h create mode 100644 dcmjpeg/include/dcmtk/dcmjpeg/djdjp2.h create mode 100644 dcmjpeg/libsrc/djdecjp2lol.cc create mode 100644 dcmjpeg/libsrc/djdjp2.cc diff --git a/config/Makefile.def.in b/config/Makefile.def.in index cb6e81a..af44dba 100644 --- a/config/Makefile.def.in +++ b/config/Makefile.def.in @@ -73,6 +73,7 @@ OPENSSLLIBS = @OPENSSLLIBS@ TIFFLIBS = @TIFFLIBS@ PNGLIBS = @PNGLIBS@ ZLIBLIBS = @ZLIBLIBS@ +JASPERLIBS = -ljasper CLUCENELIBS = -lclucene-core BOOSTLIBS = -lboost_system-mt -lboost_filesystem-mt XMLLIBS = @XMLLIBS@ diff --git a/dcmjpeg/apps/Makefile.in b/dcmjpeg/apps/Makefile.in index cf91308..04fa7ce 100644 --- a/dcmjpeg/apps/Makefile.in +++ b/dcmjpeg/apps/Makefile.in @@ -43,7 +43,7 @@ LOCALINCLUDES = $(dcmjpeginc) $(ofstdinc) $(dcmdatainc) $(dcmimageinc) $(dcmimgl LIBDIRS = -L$(top_srcdir)/libsrc $(dcmjpeglibdir) $(dcmimagelibdir) $(dcmimglelibdir) \ $(dcmdatalibdir) $(ofstdlibdir) LOCALLIBS = $(dcmjpeglib) $(dcmimagelib) $(dcmimglelib) $(dcmdatalib) $(ofstdlib) \ - $(TIFFLIBS) $(PNGLIBS) $(ZLIBLIBS) + $(TIFFLIBS) $(PNGLIBS) $(ZLIBLIBS) $(JASPERLIBS) objs = dcmdjpeg.o dcmcjpeg.o dcmj2pnm.o dcmmkdir.o progs = dcmdjpeg dcmcjpeg dcmj2pnm dcmmkdir diff --git a/dcmjpeg/include/dcmtk/dcmjpeg/djdecjp2lol.h b/dcmjpeg/include/dcmtk/dcmjpeg/djdecjp2lol.h new file mode 100644 index 0000000..2030f41 --- /dev/null +++ b/dcmjpeg/include/dcmtk/dcmjpeg/djdecjp2lol.h @@ -0,0 +1,53 @@ +/* + * + * Module: dcmjpeg + * + * Author: Henning Meyer + * + * Purpose: Codec class for decoding JPEG2000 Lossless + * + */ + +#ifndef DJDECJP2LOL_H +#define DJDECJP2LOL_H + +#include "dcmtk/config/osconfig.h" +#include "dcmtk/dcmjpeg/djcodecd.h" /* for class DJCodecDecoder */ + + +/** Decoder class for JPEG2000 Lossless + */ +class DJDecoderJPEG2000Lossless : public DJCodecDecoder +{ +public: + + /// default constructor + DJDecoderJPEG2000Lossless(); + + /// destructor + virtual ~DJDecoderJPEG2000Lossless(); + + /** returns the transfer syntax that this particular codec + * is able to encode and decode. + * @return supported transfer syntax + */ + virtual E_TransferSyntax supportedTransferSyntax() const; + +private: + + /** creates an instance of the compression library to be used for decoding. + * @param toRepParam representation parameter passed to decode() + * @param cp codec parameter passed to decode() + * @param bitsPerSample bits per sample for the image data + * @param isYBR flag indicating whether DICOM photometric interpretation is YCbCr + * @return pointer to newly allocated decoder object + */ + virtual DJDecoder *createDecoderInstance( + const DcmRepresentationParameter * toRepParam, + const DJCodecParameter *cp, + Uint8 bitsPerSample, + OFBool isYBR) const; + +}; + +#endif \ No newline at end of file diff --git a/dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h b/dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h index e3a5597..93742ae 100644 --- a/dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h +++ b/dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h @@ -45,6 +45,7 @@ class DJDecoderLossless; class DJDecoderP14SV1; class DJDecoderProgressive; class DJDecoderSpectralSelection; +class DJDecoderJPEG2000Lossless; /** singleton class that registers decoders for all supported JPEG processes. */ @@ -98,6 +99,9 @@ class DJDecoderRegistration /// pointer to decoder for lossless JPEG static DJDecoderLossless *declol; + + /// pointer to decoder for lossless JPEG2000 + static DJDecoderJPEG2000Lossless *decjp2lol; }; diff --git a/dcmjpeg/include/dcmtk/dcmjpeg/djdjp2.h b/dcmjpeg/include/dcmtk/dcmjpeg/djdjp2.h new file mode 100644 index 0000000..5001774 --- /dev/null +++ b/dcmjpeg/include/dcmtk/dcmjpeg/djdjp2.h @@ -0,0 +1,114 @@ +/* + * + * Module: dcmjpeg + * + * Author: Henning Meyer + * + * Purpose: decompression routines of the Jasper JPEG2000 library + * + */ + +#ifndef DJDJP2_H +#define DJDJP2_H + +#include "dcmtk/config/osconfig.h" +#include "dcmtk/dcmjpeg/djdecabs.h" /* for class DJDecoder */ + +#include +using namespace boost; + +class DJCodecParameter; + +/** this class encapsulates the decompression routines of the + * JasPer JPEG library + */ +class DJDecompressJPEG2000 : public DJDecoder +{ +public: + + /** constructor + * @param cp codec parameters + * @param isYBR flag indicating if DICOM photometric interpretation is YCbCr + */ + DJDecompressJPEG2000(const DJCodecParameter& cp, OFBool isYBR, Uint8 bitsPerSample); + + /// destructor + virtual ~DJDecompressJPEG2000(); + + /** initializes internal object structures. + * Must be called before a new frame is decompressed. + * @return EC_Normal if successful, an error code otherwise + */ + virtual OFCondition init(); + + /** suspended decompression routine. Decompresses a JPEG frame + * until finished or out of data. Can be called with new data + * until a frame is complete. + * @param compressedFrameBuffer pointer to compressed input data, must not be NULL + * @param compressedFrameBufferSize size of buffer, in bytes + * @param uncompressedFrameBuffer pointer to uncompressed output data, must not be NULL. + * This buffer must not change between multiple decode() calls for a single frame. + * @param uncompressedFrameBufferSize size of buffer, in bytes (!) + * Buffer must be large enough to contain a complete frame. + * @param isSigned OFTrue, if uncompressed pixel data is signed, OFFalse otherwise + * @return EC_Normal if successful, EC_Suspend if more data is needed, an error code otherwise. + */ + virtual OFCondition decode( + Uint8 *compressedFrameBuffer, + Uint32 compressedFrameBufferSize, + Uint8 *uncompressedFrameBuffer, + Uint32 uncompressedFrameBufferSize, + OFBool isSigned); + + /** returns the number of bytes per sample that will be written when decoding. + */ + virtual Uint16 bytesPerSample() const + { + return sizeof(Uint16); + } + + /** after successful compression, + * returns the color model of the decompressed image + */ + virtual EP_Interpretation getDecompressedColorModel() const + { + return decompressedColorModel; + } + + /** callback function used to report warning messages and the like. + * Should not be called by user code directly. + */ + virtual void outputMessage() const; + +private: + + /// private undefined copy constructor + DJDecompressJPEG2000(const DJDecompressJPEG2000&); + + /// private undefined copy assignment operator + DJDecompressJPEG2000& operator=(const DJDecompressJPEG2000&); + + /// cleans up cinfo structure, called from destructor and error handlers + void cleanup(); +/* + /// codec parameters + const DJCodecParameter *cparam; + + /// decompression structure + jpeg_decompress_struct *cinfo; + + /// position of last suspend + int suspension; + + /// temporary storage for row buffer during suspension + void *jsampBuffer; + + /// Flag indicating if DICOM photometric interpretation is YCbCr + OFBool dicomPhotometricInterpretationIsYCbCr; +*/ + + /// color model after decompression + EP_Interpretation decompressedColorModel; +}; + +#endif \ No newline at end of file diff --git a/dcmjpeg/include/dcmtk/dcmjpeg/djutils.h b/dcmjpeg/include/dcmtk/dcmjpeg/djutils.h index 8c2c20a..1c0078c 100644 --- a/dcmjpeg/include/dcmtk/dcmjpeg/djutils.h +++ b/dcmjpeg/include/dcmtk/dcmjpeg/djutils.h @@ -170,6 +170,13 @@ extern const OFCondition EJ_IJG16_FrameBufferTooSmall; extern const OFCondition EJ_UnsupportedPhotometricInterpretation; /// Codec does not support this kind of color conversion extern const OFCondition EJ_UnsupportedColorConversion; +/// Codec implementation does not support multiple Components +extern const OFCondition EJ_UnsupportedNumberOfComponents; +/// Coded and expected Signedness do not match +extern const OFCondition EJ_ConflictingSignedness; +/// Error in JPEG2000 decoder +extern const OFCondition EJ_JPEG2000DecoderError; + // reserved condition codes for IJG error messages const unsigned short EJCode_IJG8_Compression = 0x0100; @@ -178,6 +185,7 @@ const unsigned short EJCode_IJG12_Compression = 0x0102; const unsigned short EJCode_IJG12_Decompression = 0x0103; const unsigned short EJCode_IJG16_Compression = 0x0104; const unsigned short EJCode_IJG16_Decompression = 0x0105; +const unsigned short EJCode_JP2_Decompression = 0x0106; /** helper class with static methods used from different dcmjpeg classes * (in particular from the encoder and the decoder part). diff --git a/dcmjpeg/libsrc/Makefile.in b/dcmjpeg/libsrc/Makefile.in index 14454ff..f181645 100644 --- a/dcmjpeg/libsrc/Makefile.in +++ b/dcmjpeg/libsrc/Makefile.in @@ -25,7 +25,8 @@ LOCALDEFS = objs = djutils.o djencode.o djrplol.o djrploss.o djcparam.o djeijg8.o djdijg8.o \ djcodecd.o djdecbas.o djdecext.o djdecpro.o djdecsps.o djdeclol.o djdecsv1.o \ djcodece.o djencbas.o djencext.o djencpro.o djencsps.o djenclol.o djencsv1.o \ - djeijg12.o djdijg12.o djeijg16.o djdijg16.o djdecode.o dipijpeg.o ddpiimpl.o + djeijg12.o djdijg12.o djeijg16.o djdijg16.o djdecode.o dipijpeg.o ddpiimpl.o \ + djdecjp2lol.o djdjp2.o library = libdcmjpeg.$(LIBEXT) diff --git a/dcmjpeg/libsrc/djcodecd.cc b/dcmjpeg/libsrc/djcodecd.cc index f84775b..56f191f 100644 --- a/dcmjpeg/libsrc/djcodecd.cc +++ b/dcmjpeg/libsrc/djcodecd.cc @@ -131,7 +131,13 @@ OFCondition DJCodecDecoder::decode( result = pixItem->getUint8Array(jpegData); if (result.good()) { - Uint8 precision = scanJpegDataForBitDepth(jpegData, fragmentLength); + Uint8 precision = 0; + + if (supportedTransferSyntax() == EXS_JPEG2000LosslessOnly) { + precision = imageBitsStored; + } else { + precision = scanJpegDataForBitDepth(jpegData, fragmentLength); + } if (precision == 0) result = EC_CannotChangeRepresentation; // something has gone wrong, bail out else { diff --git a/dcmjpeg/libsrc/djdecjp2lol.cc b/dcmjpeg/libsrc/djdecjp2lol.cc new file mode 100644 index 0000000..1b6ce04 --- /dev/null +++ b/dcmjpeg/libsrc/djdecjp2lol.cc @@ -0,0 +1,47 @@ +/* + * + * Module: dcmjpeg + * + * Author: Henning Meyer + * + * Purpose: Codec class for decoding JPEG2000 Lossless + * + */ + +#include "dcmtk/config/osconfig.h" +#include "dcmtk/dcmjpeg/djdecjp2lol.h" +#include "dcmtk/dcmjpeg/djcparam.h" +#include "dcmtk/dcmjpeg/djdjp2.h" + +#include +using namespace std; + +DJDecoderJPEG2000Lossless::DJDecoderJPEG2000Lossless() +: DJCodecDecoder() +{ + cerr << __FUNCTION__ << endl; +} + + +DJDecoderJPEG2000Lossless::~DJDecoderJPEG2000Lossless() +{ + cerr << __FUNCTION__ << endl; +} + + +E_TransferSyntax DJDecoderJPEG2000Lossless::supportedTransferSyntax() const +{ + cerr << __FUNCTION__ << endl; + return EXS_JPEG2000LosslessOnly; +} + + +DJDecoder *DJDecoderJPEG2000Lossless::createDecoderInstance( + const DcmRepresentationParameter * /* toRepParam */, + const DJCodecParameter *cp, + Uint8 bitsPerSample, + OFBool isYBR) const +{ + cerr << __FUNCTION__ << endl; + return new DJDecompressJPEG2000( *cp, isYBR, bitsPerSample ); +} \ No newline at end of file diff --git a/dcmjpeg/libsrc/djdecode.cc b/dcmjpeg/libsrc/djdecode.cc index 12730fc..163157c 100644 --- a/dcmjpeg/libsrc/djdecode.cc +++ b/dcmjpeg/libsrc/djdecode.cc @@ -41,6 +41,7 @@ #include "dcmtk/dcmjpeg/djdecpro.h" #include "dcmtk/dcmjpeg/djdecsv1.h" #include "dcmtk/dcmjpeg/djdeclol.h" +#include "dcmtk/dcmjpeg/djdecjp2lol.h" #include "dcmtk/dcmjpeg/djcparam.h" // initialization of static members @@ -52,6 +53,7 @@ DJDecoderSpectralSelection *DJDecoderRegistration::decsps = NULL; DJDecoderProgressive *DJDecoderRegistration::decpro = NULL; DJDecoderP14SV1 *DJDecoderRegistration::decsv1 = NULL; DJDecoderLossless *DJDecoderRegistration::declol = NULL; +DJDecoderJPEG2000Lossless *DJDecoderRegistration::decjp2lol = NULL; void DJDecoderRegistration::registerCodecs( E_DecompressionColorSpaceConversion pDecompressionCSConversion, @@ -93,6 +95,10 @@ void DJDecoderRegistration::registerCodecs( declol = new DJDecoderLossless(); if (declol) DcmCodecList::registerCodec(declol, NULL, cp); + // lossless JPEG2000 + decjp2lol = new DJDecoderJPEG2000Lossless(); + if (decjp2lol) DcmCodecList::registerCodec(decjp2lol, NULL, cp); + registered = OFTrue; } } @@ -114,6 +120,8 @@ void DJDecoderRegistration::cleanup() delete decsv1; DcmCodecList::deregisterCodec(declol); delete declol; + DcmCodecList::deregisterCodec(decjp2lol); + delete decjp2lol; delete cp; registered = OFFalse; #ifdef DEBUG diff --git a/dcmjpeg/libsrc/djdjp2.cc b/dcmjpeg/libsrc/djdjp2.cc new file mode 100644 index 0000000..10c78a7 --- /dev/null +++ b/dcmjpeg/libsrc/djdjp2.cc @@ -0,0 +1,127 @@ +/* + * + * Module: dcmjpeg + * + * Author: Henning Meyer + * + * Purpose: decompression routines of the Jasper JPEG2000 library + * + */ + +#include "dcmtk/config/osconfig.h" +#include "dcmtk/dcmjpeg/djdjp2.h" +#include +//#include "dcmtk/dcmjpeg/djcparam.h" + +//#include "dcmtk/ofstd/ofconsol.h" + +//#define INCLUDE_CSTDIO +//#define INCLUDE_CSETJMP +//#include "dcmtk/ofstd/ofstdinc.h" + +#include +using namespace std; + + +DJDecompressJPEG2000::DJDecompressJPEG2000(const DJCodecParameter& cp, OFBool isYBR, Uint8 bitsPerSample) +: DJDecoder() +, decompressedColorModel(EPI_Unknown) +/*, cparam(&cp) +, cinfo(NULL) +, suspension(0) +, jsampBuffer(NULL) +, dicomPhotometricInterpretationIsYCbCr(isYBR) +, decompressedColorModel(EPI_Unknown)*/ +{ + cerr << __FUNCTION__ << endl; + jas_init(); +} + +DJDecompressJPEG2000::~DJDecompressJPEG2000() +{ + cerr << __FUNCTION__ << endl; + cleanup(); +} + + +OFCondition DJDecompressJPEG2000::init() +{ + cerr << __FUNCTION__ << endl; + return EC_Normal; +} + + +void DJDecompressJPEG2000::cleanup() +{ + cerr << __FUNCTION__ << endl; + jas_cleanup(); +} + + +OFCondition DJDecompressJPEG2000::decode( + Uint8 *compressedFrameBuffer, + Uint32 compressedFrameBufferSize, + Uint8 *uncompressedFrameBuffer, + Uint32 uncompressedFrameBufferSize, + OFBool isSigned) +{ + cerr << __FUNCTION__ << ": starting with " << compressedFrameBufferSize << " bytes" << endl; + jas_stream_t* jp2Stream = jas_stream_memopen( (char*)compressedFrameBuffer, compressedFrameBufferSize ); +// jas_stream_t* outStream = jas_stream_memopen( (char*)uncompressedFrameBuffer, uncompressedFrameBufferSize ); + if (!jp2Stream){// || !outStream) { + cleanup(); + return EJ_JPEG2000DecoderError; + } + char *jp2opt = NULL; + jas_image_t *image = jpc_decode(jp2Stream, jp2opt); + jas_stream_close( jp2Stream ); + if (!image) { + cleanup(); + return EJ_JPEG2000DecoderError; + } + cerr << "decoded JPEG2000: " << jas_image_numcmpts(image) << " components" << endl; + if (jas_image_numcmpts(image)!=1) { //only do Grayscale at the moment + cleanup(); + return EJ_UnsupportedNumberOfComponents; + } + jas_image_cmpt_t *cpt = image->cmpts_[0]; + if (cpt->tlx_ != 0 || cpt->tly_ != 0 || cpt->hstep_ != 1 || cpt->vstep_ != 1) { + cerr << __FILE__ << ":" << __FUNCTION__ << " warning - strange Component:"; + cerr << "tlx:" << cpt->tlx_ << " tly:" << cpt->tly_ + << " hstep:" << cpt->hstep_ << " vstep:" << cpt->vstep_ << endl; + } + decompressedColorModel = EPI_Monochrome2; + if (image->cmpts_[0]->sgnd_ && !isSigned ) { + cleanup(); + return EJ_ConflictingSignedness; + } + jas_stream_seek(cpt->stream_, 0, SEEK_SET ); + int numPix = std::min( (jas_image_coord_t) uncompressedFrameBufferSize / cpt->cps_ , cpt->width_ * cpt->height_); + + for(int c = 0; c < numPix; c++) { + uchar b1 = jas_stream_getc( cpt->stream_ ); + if (b1==EOF) break; + uchar b2 = jas_stream_getc( cpt->stream_ ); + if (b2==EOF) break; + *(uncompressedFrameBuffer++) = b2; + *(uncompressedFrameBuffer++) = b1; + } +// jas_stream_copy(outStream, cpt->stream_, -1); +// jas_stream_seek(outStream, 0, SEEK_SET ); + +// jas_stream_close( outStream ); + jas_image_destroy( image ); + return EC_Normal; +} + +void DJDecompressJPEG2000::outputMessage() const +{ + cerr << __FUNCTION__ << endl; +/* + if (cinfo && cparam->isVerbose()) + { + ofConsole.lockCerr() << "JPEG2000 decoder" << endl; + ofConsole.unlockCerr(); + } +*/ +} diff --git a/dcmjpeg/libsrc/djutils.cc b/dcmjpeg/libsrc/djutils.cc index fa33fc6..4f2c7bb 100644 --- a/dcmjpeg/libsrc/djutils.cc +++ b/dcmjpeg/libsrc/djutils.cc @@ -45,6 +45,9 @@ const OFConditionConst EJC_IJG12_FrameBufferTooSmall( OFM_dcmjpeg, 3 const OFConditionConst EJC_IJG16_FrameBufferTooSmall( OFM_dcmjpeg, 4, OF_error, "Buffer for decompressed image (16 bits/sample) too small" ); const OFConditionConst EJC_UnsupportedPhotometricInterpretation( OFM_dcmjpeg, 5, OF_error, "Codec does not support this PhotometricInterpretation" ); const OFConditionConst EJC_UnsupportedColorConversion( OFM_dcmjpeg, 6, OF_error, "Codec does not support this kind of color conversion" ); +const OFConditionConst EJC_UnsupportedNumberOfComponents( OFM_dcmjpeg, 7, OF_error, "Codec implementation does not support multiple Components" ); +const OFConditionConst EJC_ConflictingSignedness( OFM_dcmjpeg, 8, OF_error, "Coded and expected Signedness do not match" ); +const OFConditionConst EJC_JPEG2000DecoderError( OFM_dcmjpeg, 9, OF_error, "Error in JPEG2000 decoder" ); const OFCondition EJ_Suspension( EJC_Suspension); const OFCondition EJ_IJG8_FrameBufferTooSmall( EJC_IJG8_FrameBufferTooSmall); @@ -52,6 +55,11 @@ const OFCondition EJ_IJG12_FrameBufferTooSmall( EJC_IJG12_FrameB const OFCondition EJ_IJG16_FrameBufferTooSmall( EJC_IJG16_FrameBufferTooSmall); const OFCondition EJ_UnsupportedPhotometricInterpretation( EJC_UnsupportedPhotometricInterpretation); const OFCondition EJ_UnsupportedColorConversion( EJC_UnsupportedColorConversion); +const OFCondition EJ_UnsupportedNumberOfComponents( EJC_UnsupportedNumberOfComponents); +const OFCondition EJ_ConflictingSignedness( EJC_ConflictingSignedness); +const OFCondition EJ_JPEG2000DecoderError( EJC_JPEG2000DecoderError); + + EP_Interpretation DcmJpegHelper::getPhotometricInterpretation(DcmItem *item) { if (item) From e3c0683f091808f2089361681e82494b31b4a6ce Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 4 Feb 2010 11:43:07 -0500 Subject: [PATCH 02/12] remove debug output --- dcmjpeg/libsrc/djdecjp2lol.cc | 4 ---- dcmjpeg/libsrc/djdjp2.cc | 21 ++------------------- 2 files changed, 2 insertions(+), 23 deletions(-) diff --git a/dcmjpeg/libsrc/djdecjp2lol.cc b/dcmjpeg/libsrc/djdecjp2lol.cc index 1b6ce04..2d9d968 100644 --- a/dcmjpeg/libsrc/djdecjp2lol.cc +++ b/dcmjpeg/libsrc/djdecjp2lol.cc @@ -19,19 +19,16 @@ using namespace std; DJDecoderJPEG2000Lossless::DJDecoderJPEG2000Lossless() : DJCodecDecoder() { - cerr << __FUNCTION__ << endl; } DJDecoderJPEG2000Lossless::~DJDecoderJPEG2000Lossless() { - cerr << __FUNCTION__ << endl; } E_TransferSyntax DJDecoderJPEG2000Lossless::supportedTransferSyntax() const { - cerr << __FUNCTION__ << endl; return EXS_JPEG2000LosslessOnly; } @@ -42,6 +39,5 @@ DJDecoder *DJDecoderJPEG2000Lossless::createDecoderInstance( Uint8 bitsPerSample, OFBool isYBR) const { - cerr << __FUNCTION__ << endl; return new DJDecompressJPEG2000( *cp, isYBR, bitsPerSample ); } \ No newline at end of file diff --git a/dcmjpeg/libsrc/djdjp2.cc b/dcmjpeg/libsrc/djdjp2.cc index 10c78a7..8dba26d 100644 --- a/dcmjpeg/libsrc/djdjp2.cc +++ b/dcmjpeg/libsrc/djdjp2.cc @@ -33,27 +33,23 @@ DJDecompressJPEG2000::DJDecompressJPEG2000(const DJCodecParameter& cp, OFBool is , dicomPhotometricInterpretationIsYCbCr(isYBR) , decompressedColorModel(EPI_Unknown)*/ { - cerr << __FUNCTION__ << endl; jas_init(); } DJDecompressJPEG2000::~DJDecompressJPEG2000() { - cerr << __FUNCTION__ << endl; cleanup(); } OFCondition DJDecompressJPEG2000::init() { - cerr << __FUNCTION__ << endl; return EC_Normal; } void DJDecompressJPEG2000::cleanup() { - cerr << __FUNCTION__ << endl; jas_cleanup(); } @@ -65,10 +61,8 @@ OFCondition DJDecompressJPEG2000::decode( Uint32 uncompressedFrameBufferSize, OFBool isSigned) { - cerr << __FUNCTION__ << ": starting with " << compressedFrameBufferSize << " bytes" << endl; jas_stream_t* jp2Stream = jas_stream_memopen( (char*)compressedFrameBuffer, compressedFrameBufferSize ); -// jas_stream_t* outStream = jas_stream_memopen( (char*)uncompressedFrameBuffer, uncompressedFrameBufferSize ); - if (!jp2Stream){// || !outStream) { + if (!jp2Stream) { cleanup(); return EJ_JPEG2000DecoderError; } @@ -79,7 +73,6 @@ OFCondition DJDecompressJPEG2000::decode( cleanup(); return EJ_JPEG2000DecoderError; } - cerr << "decoded JPEG2000: " << jas_image_numcmpts(image) << " components" << endl; if (jas_image_numcmpts(image)!=1) { //only do Grayscale at the moment cleanup(); return EJ_UnsupportedNumberOfComponents; @@ -106,22 +99,12 @@ OFCondition DJDecompressJPEG2000::decode( *(uncompressedFrameBuffer++) = b2; *(uncompressedFrameBuffer++) = b1; } -// jas_stream_copy(outStream, cpt->stream_, -1); -// jas_stream_seek(outStream, 0, SEEK_SET ); -// jas_stream_close( outStream ); jas_image_destroy( image ); return EC_Normal; } void DJDecompressJPEG2000::outputMessage() const { - cerr << __FUNCTION__ << endl; -/* - if (cinfo && cparam->isVerbose()) - { - ofConsole.lockCerr() << "JPEG2000 decoder" << endl; - ofConsole.unlockCerr(); - } -*/ + cerr << __FILE__ << ":" <<__FUNCTION__ << endl; } From 90c605576494f3bf145936d5214cb273fe55da4b Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 4 Feb 2010 11:48:01 -0500 Subject: [PATCH 03/12] include missing JasPer lib --- dcmqrdb/apps/Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dcmqrdb/apps/Makefile.in b/dcmqrdb/apps/Makefile.in index 8a66de9..06f4e4c 100644 --- a/dcmqrdb/apps/Makefile.in +++ b/dcmqrdb/apps/Makefile.in @@ -41,7 +41,7 @@ LOCALINCLUDES = $(dcmnetinc) $(dcmdatainc) $(ofstdinc) $(dcmimgleinc) $(dcmjpegi LIBDIRS = -L$(top_srcdir)/libsrc $(dcmnetlibdir) $(dcmdatalibdir) $(ofstdlibdir)\ $(dcmjpeglibdir) $(dcmimglelibdir) LOCALLIBS = -ldcmqrdb $(CLUCENELIBS) $(BOOSTLIBS) $(dcmnetlib) $(dcmdatalib)\ - $(ofstdlib) $(dcmjpeglib) $(dcmimglelib) $(ZLIBLIBS) $(TCPWRAPPERLIBS) + $(ofstdlib) $(dcmjpeglib) $(dcmimglelib) $(ZLIBLIBS) $(TCPWRAPPERLIBS) $(JASPERLIBS) objs = dcmqrscp.o dcmqrti.o dcmqridx.o progs = dcmqrscp dcmqrti dcmqridx From d903199cfdd82e81a0d2d70eedef731873d33d72 Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Wed, 17 Feb 2010 12:41:58 -0500 Subject: [PATCH 04/12] support for STD libs --- ofstd/include/dcmtk/ofstd/ofstream.h | 1 + 1 file changed, 1 insertion(+) diff --git a/ofstd/include/dcmtk/ofstd/ofstream.h b/ofstd/include/dcmtk/ofstd/ofstream.h index 83f31c7..ee0096c 100644 --- a/ofstd/include/dcmtk/ofstd/ofstream.h +++ b/ofstd/include/dcmtk/ofstd/ofstream.h @@ -47,6 +47,7 @@ // For standard STREAMS library: preference for standard stringstream #if defined(HAVE_SSTREAM) #include +using namespace std; #define USE_STRINGSTREAM #elif defined(HAVE_STRSTREAM) #include From 24418304d2553bc94d8446aaecd0a455857c7f7a Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Wed, 17 Feb 2010 12:42:48 -0500 Subject: [PATCH 05/12] reorganization and support for DicomQuereRetrieveLuceneIndex(DicomQuereRetrieveLuceneIndex &other) --- dcmqrdb/apps/Makefile.dep | 28 +++-- .../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h | 35 +----- dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h | 21 ++-- .../dcmtk/dcmqrdb}/dcmqrdblhimpl.h | 52 ++++---- .../include/dcmtk/dcmqrdb/lowercaseanalyzer.h | 17 +++ dcmqrdb/include/dcmtk/dcmqrdb/luceneenums.h | 44 +++++++ .../{lucenehelper.h => lucenestring.h} | 29 +---- dcmqrdb/libsrc/Makefile.dep | 112 ++++-------------- dcmqrdb/libsrc/Makefile.in | 2 +- dcmqrdb/libsrc/dcmqrdbl.cc | 55 ++++----- dcmqrdb/libsrc/dcmqrdblhimpl.cc | 66 ++++++----- dcmqrdb/libsrc/lowercaseanalyzer.cc | 20 ++++ dcmqrdb/libsrc/lucenehelper.cc | 81 ------------- dcmqrdb/libsrc/lucenestring.cc | 24 ++++ 14 files changed, 255 insertions(+), 331 deletions(-) rename dcmqrdb/{libsrc => include/dcmtk/dcmqrdb}/dcmqrdblhimpl.h (67%) create mode 100644 dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h create mode 100644 dcmqrdb/include/dcmtk/dcmqrdb/luceneenums.h rename dcmqrdb/include/dcmtk/dcmqrdb/{lucenehelper.h => lucenestring.h} (56%) create mode 100644 dcmqrdb/libsrc/lowercaseanalyzer.cc delete mode 100644 dcmqrdb/libsrc/lucenehelper.cc create mode 100644 dcmqrdb/libsrc/lucenestring.cc diff --git a/dcmqrdb/apps/Makefile.dep b/dcmqrdb/apps/Makefile.dep index cc54146..ee6b325 100644 --- a/dcmqrdb/apps/Makefile.dep +++ b/dcmqrdb/apps/Makefile.dep @@ -18,11 +18,16 @@ dcmqridx.o: dcmqridx.cc ../../config/include/dcmtk/config/osconfig.h \ ../include/dcmtk/dcmqrdb/dcmqrdbs.h ../include/dcmtk/dcmqrdb/dcmqrdbl.h \ ../include/dcmtk/dcmqrdb/dcmqrdba.h \ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ + ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ + ../../dcmnet/include/dcmtk/dcmnet/lst.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../dcmnet/include/dcmtk/dcmnet/dul.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ + ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ @@ -32,12 +37,8 @@ dcmqridx.o: dcmqridx.cc ../../config/include/dcmtk/config/osconfig.h \ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ + ../include/dcmtk/dcmqrdb/luceneenums.h \ + ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ @@ -90,7 +91,8 @@ dcmqrscp.o: dcmqrscp.cc ../../config/include/dcmtk/config/osconfig.h \ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h + ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ + ../include/dcmtk/dcmqrdb/luceneenums.h dcmqrti.o: dcmqrti.cc ../../config/include/dcmtk/config/osconfig.h \ ../../config/include/dcmtk/config/cfunix.h \ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ @@ -135,4 +137,10 @@ dcmqrti.o: dcmqrti.cc ../../config/include/dcmtk/config/osconfig.h \ ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djutils.h \ + ../../dcmimgle/include/dcmtk/dcmimgle/diutils.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djencode.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcrledrg.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcrleerg.h diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h index 3264423..00238fe 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h @@ -4,40 +4,15 @@ #include #include #include -#include "dcmtk/dcmdata/dcdeftag.h" -#include "dcmtk/dcmnet/dimse.h" #include #include -#include -#include "dcmtk/dcmqrdb/lucenehelper.h" - +#include "dcmtk/dcmqrdb/lucenestring.h" +#include "dcmtk/dcmqrdb/luceneenums.h" -/** query models - */ -enum Lucene_QUERY_CLASS -{ - /// patient root Q/R model - PATIENT_ROOT=1, - /// study root Q/R model - STUDY_ROOT, - /// patient/study only Q/R model - PATIENT_STUDY -}; +#include "dcmtk/dcmdata/dcdeftag.h" +#include "dcmtk/dcmdata/dcuid.h" -/** enumeration describing the levels of the DICOM Q/R information model -*/ -enum Lucene_LEVEL -{ - /// DICOM Q/R patient level - PATIENT_LEVEL=11, - /// DICOM Q/R study level - STUDY_LEVEL, - /// DICOM Q/R series level - SERIE_LEVEL, - /// DICOM Q/R instance level - IMAGE_LEVEL -}; struct Lucene_Entry { @@ -78,7 +53,7 @@ struct Lucene_Entry KEY_CLASS keyClass ; FIELD_TYPE fieldType ; Lucene_Entry(const DcmTagKey& t, Lucene_LEVEL l, KEY_TYPE kt, KEY_CLASS kc, FIELD_TYPE ft) - : tag(t), tagStr( tag ), level(l), keyAttr(kt), keyClass(kc), fieldType(ft) { } + : tag(t), tagStr( t ), level(l), keyAttr(kt), keyClass(kc), fieldType(ft) { } int operator < (const Lucene_Entry& other) const { return this->tag < other.tag; } diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h index eadff81..3241913 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h @@ -23,17 +23,21 @@ #include #include -#define LUCENEPATH "lucene_index" +#include "dcmtk/dcmnet/dimse.h" +#include "dcmtk/dcmqrdb/luceneenums.h" + + class DcmQueryRetrieveConfig; class DcmQRDBLHImpl; +enum DcmQRLuceneIndexType; -enum DcmQRLuceneIndexType -{ - DcmQRLuceneReader, - DcmQRLuceneWriter, - DcmQRLuceneModifier -}; +const OFConditionConst DcmQRLuceneIndexErrorC(OFM_imagectn, 0x001, OF_error, "DcmQR Lucene Index Error"); +const OFCondition DcmQRLuceneIndexError(DcmQRLuceneIndexErrorC); +const OFConditionConst DcmQRLuceneNoSOPIUIDErrorC(OFM_imagectn, 0x002, OF_error, "DcmQR Lucene no DCM_SOPInstanceUID"); +const OFCondition DcmQRLuceneNoSOPIUIDError(DcmQRLuceneNoSOPIUIDErrorC); +const OFConditionConst DcmQRLuceneDoubleSOPIUIDErrorC(OFM_imagectn, 0x003, OF_error, "DcmQR Lucene double DCM_SOPInstanceUID"); +const OFCondition DcmQRLuceneDoubleSOPIUIDError(DcmQRLuceneDoubleSOPIUIDErrorC); class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle @@ -43,6 +47,9 @@ class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle const OFString &storageArea, DcmQRLuceneIndexType indexType, OFCondition& result); + DcmQueryRetrieveLuceneIndexHandle( + DcmQueryRetrieveLuceneIndexHandle &other, + OFCondition& result); ~DcmQueryRetrieveLuceneIndexHandle(); void printIndexFile(void); virtual OFCondition storeRequest(const char* SOPClassUID, const char* SOPInstanceUID, const char* imageFileName, DcmQueryRetrieveDatabaseStatus* status, OFBool isNew = OFTrue); diff --git a/dcmqrdb/libsrc/dcmqrdblhimpl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h similarity index 67% rename from dcmqrdb/libsrc/dcmqrdblhimpl.h rename to dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h index 871fbe6..7168c72 100644 --- a/dcmqrdb/libsrc/dcmqrdblhimpl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h @@ -32,24 +32,30 @@ #include #include +#include #include #include #include #include +#include -#include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" -#include "dcmtk/dcmqrdb/dcmqrdbl.h" +#include "dcmtk/dcmqrdb/lucenestring.h" +#include "dcmtk/dcmqrdb/luceneenums.h" + using namespace lucene::index; using namespace lucene::analysis; using namespace lucene::document; using namespace lucene::search; +using namespace std; using boost::scoped_ptr; +using boost::shared_ptr; namespace fs =boost::filesystem; +#include "lowercaseanalyzer.h" typedef std::list< DcmTagKey > TagListType; @@ -58,30 +64,18 @@ typedef std::map< DcmTagKey, std::string > TagStdValueMapType; typedef std::multimap< DcmTagKey, std::string > TagMultiStdValueMapType; -const OFConditionConst DcmQRLuceneIndexErrorC(OFM_imagectn, 0x001, OF_error, "DcmQR Lucene Index Error"); -const OFCondition DcmQRLuceneIndexError(DcmQRLuceneIndexErrorC); -const OFConditionConst DcmQRLuceneNoSOPIUIDErrorC(OFM_imagectn, 0x002, OF_error, "DcmQR Lucene no DCM_SOPInstanceUID"); -const OFCondition DcmQRLuceneNoSOPIUIDError(DcmQRLuceneNoSOPIUIDErrorC); -const OFConditionConst DcmQRLuceneDoubleSOPIUIDErrorC(OFM_imagectn, 0x003, OF_error, "DcmQR Lucene double DCM_SOPInstanceUID"); -const OFCondition DcmQRLuceneDoubleSOPIUIDError(DcmQRLuceneDoubleSOPIUIDErrorC); - - -class LowerCaseAnalyzer: public Analyzer { -public: - LowerCaseAnalyzer(); - virtual ~LowerCaseAnalyzer(); - TokenStream* tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); - TokenStream* reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); -}; - class DcmQRDBLHImpl { // TODO: implement Singleton based IndexWriter and IndexSearcher public: - const OFString storageArea; - scoped_ptr analyzer; - scoped_ptr indexwriter; - scoped_ptr indexsearcher; + enum Result { + good, + error + }; + const string storageArea; + shared_ptr analyzer; + shared_ptr indexwriter; + shared_ptr indexsearcher; scoped_ptr imageDoc; scoped_ptr findResponseHits; scoped_ptr findRequest; @@ -93,15 +87,17 @@ class DcmQRDBLHImpl { // TODO: implement Singleton based IndexWriter and IndexSe unsigned int moveResponseHitCounter; const DcmQRLuceneIndexType indexType; - DcmQRDBLHImpl(const OFString &s, DcmQRLuceneIndexType i, OFCondition &r); - ~DcmQRDBLHImpl(); bool checkAndStoreDataForLevel( Lucene_LEVEL level, TagValueMapType &dataset); - OFString getIndexPath(void); + DcmQRDBLHImpl(const string &s, DcmQRLuceneIndexType i, Result &r); + DcmQRDBLHImpl(DcmQRDBLHImpl &other, Result &r); + ~DcmQRDBLHImpl(); + string getIndexPath(void); void refreshForSearch(void); - static bool indexExists( const OFString &s ); + static bool indexExists( const string &s ); private: - static const std::string storageAreaToIndexPath(const OFString &storageArea); - OFCondition recreateSearcher(void); + static const std::string storageAreaToIndexPath(const string &storageArea); + Result recreateSearcher(void); + }; diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h b/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h new file mode 100644 index 0000000..0dfbc14 --- /dev/null +++ b/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h @@ -0,0 +1,17 @@ +#ifndef LOWERCASEANALYZER_H +#define LOWERCASEANALYZER_H + +#include + + + +class LowerCaseAnalyzer: public lucene::analysis::Analyzer { +public: + LowerCaseAnalyzer(); + virtual ~LowerCaseAnalyzer(); + lucene::analysis::TokenStream* tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); + lucene::analysis::TokenStream* reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); +}; + + +#endif \ No newline at end of file diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/luceneenums.h b/dcmqrdb/include/dcmtk/dcmqrdb/luceneenums.h new file mode 100644 index 0000000..df2f604 --- /dev/null +++ b/dcmqrdb/include/dcmtk/dcmqrdb/luceneenums.h @@ -0,0 +1,44 @@ +#ifndef LUCENEENUMS_H +#define LUCENEENUMS_H + +#include + +static const std::string LucenePath("lucene_index"); + +/** enumeration describing the levels of the DICOM Q/R information model +*/ +enum Lucene_LEVEL +{ + /// DICOM Q/R patient level + PATIENT_LEVEL=11, + /// DICOM Q/R study level + STUDY_LEVEL, + /// DICOM Q/R series level + SERIE_LEVEL, + /// DICOM Q/R instance level + IMAGE_LEVEL +}; + +enum DcmQRLuceneIndexType +{ + DcmQRLuceneReader, + DcmQRLuceneWriter, + DcmQRLuceneModifier +}; + + +/** query models + */ +enum Lucene_QUERY_CLASS +{ + /// patient root Q/R model + PATIENT_ROOT=1, + /// study root Q/R model + STUDY_ROOT, + /// patient/study only Q/R model + PATIENT_STUDY +}; + + + +#endif \ No newline at end of file diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/lucenehelper.h b/dcmqrdb/include/dcmtk/dcmqrdb/lucenestring.h similarity index 56% rename from dcmqrdb/include/dcmtk/dcmqrdb/lucenehelper.h rename to dcmqrdb/include/dcmtk/dcmqrdb/lucenestring.h index cbf8776..8b2f393 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/lucenehelper.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/lucenestring.h @@ -1,15 +1,12 @@ -#ifndef LUCENEHELPER_H -#define LUCENEHELPER_H +#ifndef LUCENESTRING_H +#define LUCENESTRING_H #include "dcmtk/dcmdata/dctagkey.h" -#include "dcmtk/ofstd/ofcond.h" #include #include #include -//typedef std::basic_string< TCHAR > LuceneString; - class LuceneString:public std::basic_string< TCHAR > { public: typedef std::basic_string< TCHAR > BaseType; @@ -23,8 +20,6 @@ class LuceneString:public std::basic_string< TCHAR > { } std::string toStdString(void) const; LuceneString toLower(void) const; -// private: -// std::string stdversion; }; /** this class provides a primitive interface for handling a flat DICOM element, @@ -47,26 +42,6 @@ std::string toString(const T & value) } -/* -template< class SomeStringType > -void str2LuceneStr( SomeStringType in, LuceneString &out ) { - const std::string istring(in); - out.assign( istring.begin(), istring.end() ); -} -template< class SomeStringType > -LuceneString str2LuceneStr( const SomeStringType &i ) { - LuceneString lstring; - str2LuceneStr( i, lstring ); - return lstring; -} - -std::string LuceneStr2str( LuceneString in ); -*/ -/* -DcmTagKey LuceneStr2Tag( const LuceneString &in ); -std::string LuceneTagStr2DictStr( const LuceneString &in ); -DcmTagKey LuceneStr2Tag( const LuceneString &in, OFCondition &cond ); -*/ diff --git a/dcmqrdb/libsrc/Makefile.dep b/dcmqrdb/libsrc/Makefile.dep index 06c4a9c..8e06b00 100644 --- a/dcmqrdb/libsrc/Makefile.dep +++ b/dcmqrdb/libsrc/Makefile.dep @@ -246,20 +246,22 @@ dcmqrdbi.o: dcmqrdbi.cc ../../config/include/dcmtk/config/osconfig.h \ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ ../../ofstd/include/dcmtk/ofstd/ofstd.h -dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ +dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ + ../include/dcmtk/dcmqrdb/lucenestring.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ ../../config/include/dcmtk/config/osconfig.h \ ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqrdba.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ ../../ofstd/include/dcmtk/ofstd/ofstring.h \ ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h dcmqrdblhimpl.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ + ../include/dcmtk/dcmqrdb/luceneenums.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ ../../dcmnet/include/dcmtk/dcmnet/cond.h \ @@ -268,7 +270,6 @@ dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl.h \ ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ ../../dcmnet/include/dcmtk/dcmnet/lst.h \ ../../ofstd/include/dcmtk/ofstd/oflist.h \ ../../dcmnet/include/dcmtk/dcmnet/dul.h \ @@ -287,7 +288,8 @@ dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl.h \ ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmqrdb/lucenehelper.h \ + ../include/dcmtk/dcmqrdb/dcmqrdblhimpl.h \ + ../include/dcmtk/dcmqrdb/lowercaseanalyzer.h \ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ @@ -296,54 +298,22 @@ dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl.h \ ../include/dcmtk/dcmqrdb/dcmqrdbs.h ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ ../../ofstd/include/dcmtk/ofstd/ofcmdln.h dcmqrdblhimpl.o: dcmqrdblhimpl.cc \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ + ../include/dcmtk/dcmqrdb/lucenestring.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ ../../config/include/dcmtk/config/osconfig.h \ ../../config/include/dcmtk/config/cfunix.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ ../../ofstd/include/dcmtk/ofstd/ofstring.h \ ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbs.h ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h dcmqrdblhimpl.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ + ../include/dcmtk/dcmqrdb/luceneenums.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../include/dcmtk/dcmqrdb/lucenehelper.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmqrdb/dcmqrdblhimpl.h \ + ../include/dcmtk/dcmqrdb/lowercaseanalyzer.h dcmqrdbs.o: dcmqrdbs.cc ../../config/include/dcmtk/config/osconfig.h \ ../../config/include/dcmtk/config/cfunix.h \ ../include/dcmtk/dcmqrdb/dcmqrdbs.h \ @@ -526,14 +496,14 @@ dcmqrtis.o: dcmqrtis.cc ../../config/include/dcmtk/config/osconfig.h \ ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbi.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ - ../../ofstd/include/dcmtk/ofstd/offname.h \ + ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ + ../include/dcmtk/dcmqrdb/luceneenums.h \ ../include/dcmtk/dcmqrdb/dcmqrdbs.h \ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ ../include/dcmtk/dcmqrdb/dcmqropt.h \ ../../ofstd/include/dcmtk/ofstd/ofconapp.h -lucenehelper.o: lucenehelper.cc ../include/dcmtk/dcmqrdb/lucenehelper.h \ +lucenestring.o: lucenestring.cc ../include/dcmtk/dcmqrdb/lucenestring.h \ ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ ../../config/include/dcmtk/config/osconfig.h \ ../../config/include/dcmtk/config/cfunix.h \ @@ -542,36 +512,4 @@ lucenehelper.o: lucenehelper.cc ../include/dcmtk/dcmqrdb/lucenehelper.h \ ../../ofstd/include/dcmtk/ofstd/oftypes.h \ ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h + ../../ofstd/include/dcmtk/ofstd/ofcast.h diff --git a/dcmqrdb/libsrc/Makefile.in b/dcmqrdb/libsrc/Makefile.in index cae4242..ae1715f 100644 --- a/dcmqrdb/libsrc/Makefile.in +++ b/dcmqrdb/libsrc/Makefile.in @@ -22,7 +22,7 @@ LOCALDEFS = objs = dcmqrcbf.o dcmqrcbg.o dcmqrcbm.o dcmqrcbs.o dcmqrcnf.o dcmqrdbi.o \ dcmqrdbl.o dcmqrdbs.o dcmqropt.o dcmqrptb.o dcmqrsrv.o dcmqrtis.o \ - lucenehelper.o dcmqrdblhimpl.o + lucenestring.o lowercaseanalyzer.o dcmqrdblhimpl.o library = libdcmqrdb.$(LIBEXT) diff --git a/dcmqrdb/libsrc/dcmqrdbl.cc b/dcmqrdb/libsrc/dcmqrdbl.cc index 072947b..570f42e 100644 --- a/dcmqrdb/libsrc/dcmqrdbl.cc +++ b/dcmqrdb/libsrc/dcmqrdbl.cc @@ -19,33 +19,30 @@ #include -#include "dcmtk/dcmqrdb/dcmqrdbl.h" -#include "dcmqrdblhimpl.h" - -#include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" -#include "boost/format.hpp" -#include "boost/lambda/lambda.hpp" -#include "boost/bind.hpp" -#include -#include -#include #include +#include +#include +#include #include #include #include #include #include +#include +#include +#include #include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" #include "dcmtk/dcmqrdb/dcmqrdbl.h" +#include "dcmtk/dcmqrdb/dcmqrdblhimpl.h" #include "dcmtk/ofstd/ofstdinc.h" #include "dcmtk/dcmdata/dcfilefo.h" @@ -56,20 +53,28 @@ #include "dcmtk/dcmqrdb/dcmqrcnf.h" -#include "dcmqrdblhimpl.h" - - bool DcmQueryRetrieveLuceneIndexHandle::indexExists( const OFString &s ) { - return DcmQRDBLHImpl::indexExists( s ); + return DcmQRDBLHImpl::indexExists( s.c_str() ); } DcmQueryRetrieveLuceneIndexHandle::DcmQueryRetrieveLuceneIndexHandle( const OFString &storageArea, DcmQRLuceneIndexType indexType, - OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10), - impl( new DcmQRDBLHImpl(storageArea, indexType, result) ) {} - + OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10) { + DcmQRDBLHImpl::Result r; + impl.reset( new DcmQRDBLHImpl(storageArea.c_str(), indexType, r) ); + result = (r==DcmQRDBLHImpl::good) ? EC_Normal : DcmQRLuceneIndexError; + } + +DcmQueryRetrieveLuceneIndexHandle::DcmQueryRetrieveLuceneIndexHandle( + DcmQueryRetrieveLuceneIndexHandle &other, + OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10) { + DcmQRDBLHImpl::Result r; + impl.reset( new DcmQRDBLHImpl(*other.impl,r) ); + result = (r==DcmQRDBLHImpl::good) ? EC_Normal : DcmQRLuceneIndexError; +} + DcmQueryRetrieveLuceneIndexHandle::~DcmQueryRetrieveLuceneIndexHandle() {} @@ -743,20 +748,4 @@ DcmQueryRetrieveDatabaseHandle *DcmQueryRetrieveLuceneIndexWriterHandleFactory:: } - -LowerCaseAnalyzer::LowerCaseAnalyzer(){} -LowerCaseAnalyzer::~LowerCaseAnalyzer(){} -TokenStream* LowerCaseAnalyzer::tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader){ - return new LowerCaseTokenizer(reader); -} -TokenStream* LowerCaseAnalyzer::reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader) -{ - Tokenizer* tokenizer = static_cast(getPreviousTokenStream()); - if (tokenizer == NULL) { - tokenizer = new LowerCaseTokenizer(reader); - setPreviousTokenStream(tokenizer); - } else - tokenizer->reset(reader); - return tokenizer; -} diff --git a/dcmqrdb/libsrc/dcmqrdblhimpl.cc b/dcmqrdb/libsrc/dcmqrdblhimpl.cc index b0c1cb3..83fff67 100644 --- a/dcmqrdb/libsrc/dcmqrdblhimpl.cc +++ b/dcmqrdb/libsrc/dcmqrdblhimpl.cc @@ -26,26 +26,25 @@ */ -#include "dcmtk/ofstd/ofstdinc.h" -#include "dcmtk/dcmdata/dcfilefo.h" -#include "dcmtk/dcmdata/dcdict.h" -#include "dcmtk/dcmnet/diutil.h" -#include "dcmtk/dcmqrdb/dcmqrdbs.h" +#include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" +#include "dcmtk/dcmqrdb/dcmqrdblhimpl.h" + +#include + +using namespace std; -#include "dcmtk/dcmqrdb/dcmqrcnf.h" -#include "dcmqrdblhimpl.h" -#include -bool DcmQRDBLHImpl::indexExists( const OFString &s ) { + +bool DcmQRDBLHImpl::indexExists( const string &s ) { return IndexReader::indexExists( storageAreaToIndexPath( s ).c_str() ); } -DcmQRDBLHImpl::DcmQRDBLHImpl(const OFString &storageArea, +DcmQRDBLHImpl::DcmQRDBLHImpl(const string &storageArea, DcmQRLuceneIndexType indexType, - OFCondition& result):storageArea(storageArea), analyzer( new LowerCaseAnalyzer()),imageDoc( new Document),indexType( indexType ) + Result& result):storageArea(storageArea), analyzer( new LowerCaseAnalyzer()),imageDoc( new Document),indexType( indexType ) { if (indexType == DcmQRLuceneWriter) { bool indexExists = false; @@ -59,13 +58,23 @@ DcmQRDBLHImpl::DcmQRDBLHImpl(const OFString &storageArea, indexwriter.reset( new IndexWriter( getIndexPath().c_str(), analyzer.get(), !indexExists) ); } catch(CLuceneError &e) { - CERR << "Exception while creation of IndexWriter caught:" << e.what() << endl; - result = DcmQRLuceneIndexError; + cerr << "Exception while creation of IndexWriter caught:" << e.what() << endl; + result = error; } } result = recreateSearcher(); } +DcmQRDBLHImpl::DcmQRDBLHImpl(DcmQRDBLHImpl &other, Result &r) + :storageArea(other.storageArea), analyzer( other.analyzer ),imageDoc( new Document ),indexType( other.indexType ) { + if (indexType == DcmQRLuceneWriter) { + indexwriter = other.indexwriter; + } + indexsearcher = other.indexsearcher; + r = good; +} + + void DcmQRDBLHImpl::refreshForSearch(void) { if (indexType == DcmQRLuceneWriter) indexwriter->flush(); @@ -73,23 +82,23 @@ void DcmQRDBLHImpl::refreshForSearch(void) { } -OFCondition DcmQRDBLHImpl::recreateSearcher(void) { +DcmQRDBLHImpl::Result DcmQRDBLHImpl::recreateSearcher(void) { if (indexType == DcmQRLuceneWriter) { try { indexsearcher.reset( new IndexSearcher( indexwriter->getDirectory() ) ); } catch(CLuceneError &e) { - CERR << "Exception while creation of IndexSearcher caught:" << e.what() << endl; - return DcmQRLuceneIndexError; + cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; + return error; } - } else if (indexType == DcmQRLuceneReader) { + } else if (indexType == DcmQRLuceneReader && !indexsearcher) { try { indexsearcher.reset( new IndexSearcher( getIndexPath().c_str()) ); } catch(CLuceneError &e) { - CERR << "Exception while creation of IndexSearcher caught:" << e.what() << endl; - return DcmQRLuceneIndexError; + cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; + return error; } } - return EC_Normal; + return good; } @@ -104,27 +113,27 @@ DcmQRDBLHImpl::~DcmQRDBLHImpl() { } } -const std::string DcmQRDBLHImpl::storageAreaToIndexPath(const OFString &storageArea) { - fs::path storagePath( storageArea.c_str() ); - fs::path indexPath = storagePath / LUCENEPATH; +const std::string DcmQRDBLHImpl::storageAreaToIndexPath(const string &storageArea) { + fs::path storagePath( storageArea ); + fs::path indexPath = storagePath / LucenePath; return indexPath.string(); } -OFString DcmQRDBLHImpl::getIndexPath(void) { +string DcmQRDBLHImpl::getIndexPath(void) { fs::path indexPath( storageAreaToIndexPath( storageArea ) ); if (!fs::exists( indexPath )) fs::create_directory( indexPath ); else if (!fs::is_directory( indexPath )) throw new std::runtime_error("Index Path " + indexPath.string() + " is not a directory"); - return indexPath.string().c_str(); + return indexPath.string(); } bool DcmQRDBLHImpl::checkAndStoreDataForLevel( Lucene_LEVEL level, TagValueMapType &dataset ) { // returns true if Object already existed in level LevelTagMapType::const_iterator uidTagIter = LevelToUIDTag.find( level ); - if (uidTagIter == LevelToUIDTag.end() ) std::runtime_error(std::string(__FUNCTION__) + ": level " + toString(level) +" not found!"); + if (uidTagIter == LevelToUIDTag.end() ) throw new std::runtime_error(std::string(__FUNCTION__) + ": level " + toString(level) +" not found!"); const Lucene_Entry &UIDTagEntry = uidTagIter->second; TagValueMapType::const_iterator uidDataIter = dataset.find( UIDTagEntry.tag ); - if (uidDataIter == dataset.end() ) std::runtime_error(std::string(__FUNCTION__) + ": tag " + UIDTagEntry.tagStr.toStdString() + " not found!"); + if (uidDataIter == dataset.end() ) throw new std::runtime_error(std::string(__FUNCTION__) + ": tag " + UIDTagEntry.tagStr.toStdString() + " not found!"); BooleanQuery lookupQuery; lookupQuery.add( new TermQuery( new Term( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( level )->second.c_str() ) ), BooleanClause::MUST ); @@ -152,3 +161,6 @@ refreshForSearch(); return false; } } + + + diff --git a/dcmqrdb/libsrc/lowercaseanalyzer.cc b/dcmqrdb/libsrc/lowercaseanalyzer.cc new file mode 100644 index 0000000..047c006 --- /dev/null +++ b/dcmqrdb/libsrc/lowercaseanalyzer.cc @@ -0,0 +1,20 @@ +#include "dcmtk/dcmqrdb/lowercaseanalyzer.h" + +using namespace lucene::analysis; +using namespace lucene::util; + +LowerCaseAnalyzer::LowerCaseAnalyzer(){} +LowerCaseAnalyzer::~LowerCaseAnalyzer(){} +TokenStream* LowerCaseAnalyzer::tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader){ + return new LowerCaseTokenizer(reader); +} +TokenStream* LowerCaseAnalyzer::reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader) +{ + Tokenizer* tokenizer = static_cast(getPreviousTokenStream()); + if (tokenizer == NULL) { + tokenizer = new LowerCaseTokenizer(reader); + setPreviousTokenStream(tokenizer); + } else + tokenizer->reset(reader); + return tokenizer; +} \ No newline at end of file diff --git a/dcmqrdb/libsrc/lucenehelper.cc b/dcmqrdb/libsrc/lucenehelper.cc deleted file mode 100644 index e43d03f..0000000 --- a/dcmqrdb/libsrc/lucenehelper.cc +++ /dev/null @@ -1,81 +0,0 @@ -#include "dcmtk/dcmqrdb/lucenehelper.h" -#include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" -#include -#include -#include "dcmtk/dcmdata/dcdict.h" - -/* -const OFConditionConst DcmQRBadCastC(OFM_imagectn, 0x010, OF_error, "DcmQR Bad Cast"); -const OFCondition DcmQRBadCast(DcmQRBadCastC); -*/ - - -LuceneString::LuceneString() {} -LuceneString::LuceneString( const TCHAR* t):BaseType( t ) {} -LuceneString::LuceneString( DcmTagKey t ) { - const std::string tstring( t.toString().c_str() ); - this->assign( tstring.begin(), tstring.end() ); -} -std::string LuceneString::toStdString(void) const { - std::string out; - out.assign( this->begin(), this->end() ); - return out; -} - -LuceneString LuceneString::toLower(void) const { - LuceneString out; - std::transform( this->begin(), - this->end(), - std::back_inserter(out), - (int(*)(int))tolower); - return out; -} - -Lucene_LEVEL LuceneSmallDcmElmtToLevel(const LuceneSmallDcmElmt &e) { - return DcmQRLuceneTagKeyMap.find(e.XTag)->second.level; -} - -Lucene_Entry::KEY_TYPE LuceneSmallDcmElmtToKeyType(const LuceneSmallDcmElmt &e) { - return DcmQRLuceneTagKeyMap.find(e.XTag)->second.keyAttr; -} - - -/* -DcmTagKey LuceneStr2Tag( const LuceneString &in, OFCondition &cond ) { - cond = EC_Normal; - try { - return LuceneStr2Tag( in ); - } catch ( ... ) { - cond = DcmQRBadCast; - return DcmTagKey(); - } -} - -DcmTagKey LuceneStr2Tag( const LuceneString &in ) { - if (in.length()==11) { - if (in[0] == L'(' && in[5] == ',' && in[10] == L')') { - DcmTagKey(Uint16 g, Uint16 e); - return DcmTagKey( boost::lexical_cast( in.substr(1,4) ), boost::lexical_cast( in.substr(6,4) ) ); - } - } -} - -std::string LuceneTagStr2DictStr( const LuceneString &in ) { - DcmTagKey tag; - try { - DcmTagKey tag = LuceneStr2Tag( in ); - } catch ( ... ) { - return LuceneStr2str( in ); - } - if (dcmDataDict.isDictionaryLoaded()) { - dcmDataDict - } else return LuceneStr2str( in ); - - if (in.length()==11) { - if (in[0] == L'(' && in[5] == ',' && in[10] == L')') { - DcmTagKey(Uint16 g, Uint16 e); - return DcmTagKey( boost::lexical_cast( in.substr(1,4) ), boost::lexical_cast( in.substr(6,4) ) ); - } - } -} -*/ \ No newline at end of file diff --git a/dcmqrdb/libsrc/lucenestring.cc b/dcmqrdb/libsrc/lucenestring.cc new file mode 100644 index 0000000..12c9748 --- /dev/null +++ b/dcmqrdb/libsrc/lucenestring.cc @@ -0,0 +1,24 @@ +#include "dcmtk/dcmqrdb/lucenestring.h" +#include + + +LuceneString::LuceneString() {} +LuceneString::LuceneString( const TCHAR* t):BaseType( t ) {} +LuceneString::LuceneString( DcmTagKey t ) { + const std::string tstring( t.toString().c_str() ); + this->assign( tstring.begin(), tstring.end() ); +} +std::string LuceneString::toStdString(void) const { + std::string out; + out.assign( this->begin(), this->end() ); + return out; +} + +LuceneString LuceneString::toLower(void) const { + LuceneString out; + std::transform( this->begin(), + this->end(), + std::back_inserter(out), + (int(*)(int))tolower); + return out; +} From 9b34453e83a8999c2d3bdd2c19d2647f87aaf91c Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 18 Feb 2010 09:14:26 -0500 Subject: [PATCH 06/12] needed better access to config data --- dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcnf.h | 4 + dcmqrdb/libsrc/Makefile.dep | 267 ----------------------- dcmqrdb/libsrc/dcmqrcnf.cc | 14 ++ 3 files changed, 18 insertions(+), 267 deletions(-) diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcnf.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcnf.h index 51dc8bd..0572fdb 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcnf.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcnf.h @@ -148,6 +148,8 @@ class DcmQueryRetrieveConfig * 0 - not found */ int peerForAETitle(const char *AETitle, const char **HostName, int *PortNumber) const; + + void getAEList( DcmQueryRetrieveConfigAEEntry ** const AEList, int *numAEs ) const; /* * check if given AETitles exist in same @@ -281,6 +283,8 @@ class DcmQueryRetrieveConfig */ int aeTitlesForSymbolicName(const char *symbolicName, const char ***aeTitleList) const; + const char *symbolicNameForAETitle(const char *aeTitle) const; + /* * printf contents of configuration stucture * to stdout diff --git a/dcmqrdb/libsrc/Makefile.dep b/dcmqrdb/libsrc/Makefile.dep index 8e06b00..7ff89e0 100644 --- a/dcmqrdb/libsrc/Makefile.dep +++ b/dcmqrdb/libsrc/Makefile.dep @@ -246,270 +246,3 @@ dcmqrdbi.o: dcmqrdbi.cc ../../config/include/dcmtk/config/osconfig.h \ ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ ../../ofstd/include/dcmtk/ofstd/ofstd.h -dcmqrdbl.o: dcmqrdbl.cc ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ - ../include/dcmtk/dcmqrdb/lucenestring.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../include/dcmtk/dcmqrdb/luceneenums.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmqrdb/dcmqrdblhimpl.h \ - ../include/dcmtk/dcmqrdb/lowercaseanalyzer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbs.h ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h -dcmqrdblhimpl.o: dcmqrdblhimpl.cc \ - ../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h \ - ../include/dcmtk/dcmqrdb/lucenestring.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../include/dcmtk/dcmqrdb/luceneenums.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmqrdb/dcmqrdblhimpl.h \ - ../include/dcmtk/dcmqrdb/lowercaseanalyzer.h -dcmqrdbs.o: dcmqrdbs.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbs.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h -dcmqropt.o: dcmqropt.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqropt.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h -dcmqrptb.o: dcmqrptb.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqrptb.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h -dcmqrsrv.o: dcmqrsrv.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqrsrv.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmqrdb/dcmqrptb.h ../include/dcmtk/dcmqrdb/dcmqropt.h \ - ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../include/dcmtk/dcmqrdb/dcmqrdba.h ../include/dcmtk/dcmqrdb/dcmqrcbf.h \ - ../include/dcmtk/dcmqrdb/dcmqrcbm.h ../include/dcmtk/dcmqrdb/dcmqrcbg.h \ - ../include/dcmtk/dcmqrdb/dcmqrcbs.h -dcmqrtis.o: dcmqrtis.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmqrdb/dcmqrtis.h \ - ../../dcmnet/include/dcmtk/dcmnet/dicom.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmnet/include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmnet/include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmnet/include/dcmtk/dcmnet/assoc.h \ - ../../dcmnet/include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmnet/include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmnet/include/dcmtk/dcmnet/extneg.h \ - ../../dcmnet/include/dcmtk/dcmnet/dimse.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../include/dcmtk/dcmqrdb/dcmqrcnf.h \ - ../../dcmnet/include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbl.h ../include/dcmtk/dcmqrdb/dcmqrdba.h \ - ../include/dcmtk/dcmqrdb/luceneenums.h \ - ../include/dcmtk/dcmqrdb/dcmqrdbs.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../include/dcmtk/dcmqrdb/dcmqropt.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h -lucenestring.o: lucenestring.cc ../include/dcmtk/dcmqrdb/lucenestring.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h diff --git a/dcmqrdb/libsrc/dcmqrcnf.cc b/dcmqrdb/libsrc/dcmqrcnf.cc index d9147e9..d26e718 100644 --- a/dcmqrdb/libsrc/dcmqrcnf.cc +++ b/dcmqrdb/libsrc/dcmqrcnf.cc @@ -163,6 +163,15 @@ int DcmQueryRetrieveConfig::aeTitlesForSymbolicName(const char *symbolicName, co } +const char *DcmQueryRetrieveConfig::symbolicNameForAETitle(const char *aeTitle) const { + for (int i=0; i Date: Tue, 23 Feb 2010 14:08:30 -0500 Subject: [PATCH 07/12] better performance due to fewer index flushes --- dcmqrdb/apps/dcmqridx.cc | 4 + .../include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h | 1 - dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h | 5 +- dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h | 38 +++-- dcmqrdb/libsrc/dcmqrdbl.cc | 140 ++++------------ dcmqrdb/libsrc/dcmqrdblhimpl.cc | 155 ++++++++++++------ 6 files changed, 171 insertions(+), 172 deletions(-) diff --git a/dcmqrdb/apps/dcmqridx.cc b/dcmqrdb/apps/dcmqridx.cc index e6658a4..43fb8c7 100644 --- a/dcmqrdb/apps/dcmqridx.cc +++ b/dcmqrdb/apps/dcmqridx.cc @@ -184,6 +184,10 @@ int main (int argc, char *argv[]) if (cond.good()) { hdlp->setDebugLevel(opt_debug ? 3 : 0); +#ifdef WITH_LUCENE + if (opt_verbose) + dynamic_cast(hdlp)->setVerbose( true ); +#endif #ifndef WITH_LUCENE #ifndef WITH_SQL_DATABASE dynamic_cast(hdlp)->enableQuotaSystem(OFFalse); /* disable deletion of images */ diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h index 00238fe..8ff7aa3 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl-taglist.h @@ -67,7 +67,6 @@ const LuceneString FieldNameObjectStatus( "ObjectStatus" ); const LuceneString ObjectStatusIsNew( "ObjectIsNew" ); const LuceneString ObjectStatusIsNotNew( "ObjectIsNotNew" ); const LuceneString ObjectStatusContainsNewSubobjects( "ObjectContainsNewSubobjects" ); -const LuceneString FieldNameInstanceDescription( "InstanceDescription" ); const LuceneString FieldNameDicomFileName( "DicomFileName" ); const LuceneString FieldNameDCM_SOPInstanceUID( DCM_SOPInstanceUID ); const LuceneString FieldNameDCM_SOPClassUID( DCM_SOPClassUID ); diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h index 3241913..74a44e2 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h @@ -47,13 +47,11 @@ class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle const OFString &storageArea, DcmQRLuceneIndexType indexType, OFCondition& result); - DcmQueryRetrieveLuceneIndexHandle( - DcmQueryRetrieveLuceneIndexHandle &other, - OFCondition& result); ~DcmQueryRetrieveLuceneIndexHandle(); void printIndexFile(void); virtual OFCondition storeRequest(const char* SOPClassUID, const char* SOPInstanceUID, const char* imageFileName, DcmQueryRetrieveDatabaseStatus* status, OFBool isNew = OFTrue); static bool indexExists( const OFString &s ); + void setVerbose(bool v); private: virtual void setIdentifierChecking(OFBool checkFind, OFBool checkMove); virtual void setDebugLevel(int debugLevel); @@ -78,6 +76,7 @@ class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle /// current debug level int debugLevel; + bool verbose; boost::scoped_ptr impl; diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h index 7168c72..70be2e5 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h @@ -35,9 +35,11 @@ #include #include #include +#include #include #include +#include #include @@ -60,22 +62,43 @@ namespace fs =boost::filesystem; typedef std::list< DcmTagKey > TagListType; typedef std::map< DcmTagKey, LuceneString > TagValueMapType; +typedef std::map< LuceneString, LuceneString > StringValueMapType; typedef std::map< DcmTagKey, std::string > TagStdValueMapType; typedef std::multimap< DcmTagKey, std::string > TagMultiStdValueMapType; +struct DicomUID { + Lucene_LEVEL level; + LuceneString uid; + DicomUID( Lucene_LEVEL l, const LuceneString &id ): level( l), uid(id) {} + DicomUID() {} + bool operator<(const DicomUID &other) const; +}; - +typedef set< DicomUID > UIDSetType; class DcmQRDBLHImpl { // TODO: implement Singleton based IndexWriter and IndexSearcher + protected: + static const std::string storageAreaToIndexPath(const string &storageArea); + shared_ptr analyzer; + shared_ptr indexwriter; + shared_ptr indexsearcher; + shared_ptr first_modified; + UIDSetType newUIDSet; // set of UIDs modified since last searcher flush + string getIndexPath(void); + void flushIndex(bool force=false); public: enum Result { good, error }; const string storageArea; - shared_ptr analyzer; - shared_ptr indexwriter; - shared_ptr indexsearcher; + + IndexReader& getIndexReader(); + void addDocument( Lucene_LEVEL level, const TagValueMapType &tagDataset, const StringValueMapType &stringDataset=StringValueMapType() ); + bool sopInstanceExists( const LuceneString &sopInstanceUID ); + void findQuery(Query* query, int upToDateMillis, const DicomUID &uid); + void moveQuery(Query* query, int upToDateMillis, const DicomUID &uid); + scoped_ptr imageDoc; scoped_ptr findResponseHits; scoped_ptr findRequest; @@ -89,15 +112,8 @@ class DcmQRDBLHImpl { // TODO: implement Singleton based IndexWriter and IndexSe bool checkAndStoreDataForLevel( Lucene_LEVEL level, TagValueMapType &dataset); DcmQRDBLHImpl(const string &s, DcmQRLuceneIndexType i, Result &r); - DcmQRDBLHImpl(DcmQRDBLHImpl &other, Result &r); ~DcmQRDBLHImpl(); - string getIndexPath(void); - void refreshForSearch(void); static bool indexExists( const string &s ); - private: - static const std::string storageAreaToIndexPath(const string &storageArea); - Result recreateSearcher(void); - }; diff --git a/dcmqrdb/libsrc/dcmqrdbl.cc b/dcmqrdb/libsrc/dcmqrdbl.cc index 570f42e..9373c14 100644 --- a/dcmqrdb/libsrc/dcmqrdbl.cc +++ b/dcmqrdb/libsrc/dcmqrdbl.cc @@ -53,6 +53,9 @@ #include "dcmtk/dcmqrdb/dcmqrcnf.h" + +const int IndexRequestUpToDateMillis = 5000; + bool DcmQueryRetrieveLuceneIndexHandle::indexExists( const OFString &s ) { return DcmQRDBLHImpl::indexExists( s.c_str() ); } @@ -61,32 +64,28 @@ bool DcmQueryRetrieveLuceneIndexHandle::indexExists( const OFString &s ) { DcmQueryRetrieveLuceneIndexHandle::DcmQueryRetrieveLuceneIndexHandle( const OFString &storageArea, DcmQRLuceneIndexType indexType, - OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10) { + OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10),verbose(false) { DcmQRDBLHImpl::Result r; impl.reset( new DcmQRDBLHImpl(storageArea.c_str(), indexType, r) ); result = (r==DcmQRDBLHImpl::good) ? EC_Normal : DcmQRLuceneIndexError; } -DcmQueryRetrieveLuceneIndexHandle::DcmQueryRetrieveLuceneIndexHandle( - DcmQueryRetrieveLuceneIndexHandle &other, - OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10) { - DcmQRDBLHImpl::Result r; - impl.reset( new DcmQRDBLHImpl(*other.impl,r) ); - result = (r==DcmQRDBLHImpl::good) ? EC_Normal : DcmQRLuceneIndexError; -} DcmQueryRetrieveLuceneIndexHandle::~DcmQueryRetrieveLuceneIndexHandle() {} +void DcmQueryRetrieveLuceneIndexHandle::setVerbose(bool v) { + verbose = v; +} void DcmQueryRetrieveLuceneIndexHandle::printIndexFile(void) { dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; dbdebug(1,"%s:", __FUNCTION__) ; - IndexReader *reader = impl->indexsearcher->getReader(); + IndexReader &reader = impl->getIndexReader(); Document myDoc; - for( int i = 0; i < reader->numDocs(); i++) { - reader->document( i, myDoc, NULL ); + for( int i = 0; i < reader.numDocs(); i++) { + reader.document( i, myDoc, NULL ); COUT << LuceneString( (const TCHAR*)myDoc.toString() ).toStdString() << std::endl; myDoc.clear(); } @@ -293,12 +292,15 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } queryLevel = std::min(maxLevel,queryLevel); + DicomUID mostRestrictiveUID; // add UIDs above Level to Lucene Query for( int l = baseLevel; l < maxLevel; l++) { dataMapIter = dataMap.find( LevelToUIDTag.find( (Lucene_LEVEL)l )->second.tag ); if ( dataMapIter != dataMap.end() && dataMapIter->second.length() > 0) { const Lucene_Entry &UIDTag = LevelToUIDTag.find( (Lucene_LEVEL)l )->second; - TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), LuceneString( dataMapIter->second.c_str() ).c_str() )); + LuceneString uidString( dataMapIter->second ); + mostRestrictiveUID = DicomUID( (Lucene_LEVEL)l, uidString ); + TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), uidString.c_str() )); baseQuery.add( tq, BooleanClause::MUST ); dataMap.erase( dataMapIter ); } @@ -337,11 +339,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; else delete(multiQuery); dbdebug(2, "%s: searching index: %s", __FUNCTION__, LuceneString((const TCHAR*)baseQuery.toString(NULL)).toStdString().c_str()); - impl->moveResponseHitCounter = 0; -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - impl->moveResponseHits.reset( impl->indexsearcher->search(&baseQuery) ); + impl->moveQuery(&baseQuery, IndexRequestUpToDateMillis, mostRestrictiveUID); dbdebug(1, "%s found %i items", __FUNCTION__, impl->moveResponseHits->length()); @@ -501,12 +499,15 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; // add Level to Lucene Query boolQuery.add( new TermQuery( new Term( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( queryLevel)->second.c_str() ) ) , BooleanClause::MUST ); + DicomUID mostRestrictiveUID; // add UIDs above Level to Lucene Query for( int l = baseLevel; l < maxLevel; l++) { dataMapIter = dataMap.find( LevelToUIDTag.find( (Lucene_LEVEL)l )->second.tag ); if ( dataMapIter != dataMap.end() && dataMapIter->second.length() > 0) { const Lucene_Entry &UIDTag = LevelToUIDTag.find( (Lucene_LEVEL)l )->second; - TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), LuceneString( dataMapIter->second.c_str() ).c_str() )); + LuceneString uidString( dataMapIter->second ); + mostRestrictiveUID = DicomUID( (Lucene_LEVEL)l, uidString ); + TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), uidString.c_str() )); boolQuery.add( tq, BooleanClause::MUST ); } } @@ -540,11 +541,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } dbdebug(2, "%s: searching index: %s", __FUNCTION__, LuceneString((const TCHAR*)boolQuery.toString(NULL)).toStdString().c_str()); - impl->findResponseHitCounter = 0; -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - impl->findResponseHits.reset( impl->indexsearcher->search(&boolQuery) ); + impl->findQuery(&boolQuery, IndexRequestUpToDateMillis, mostRestrictiveUID); dbdebug(1, "%s found %i items", __FUNCTION__, impl->findResponseHits->length()); if (impl->findResponseHits->length() == 0) { @@ -584,12 +581,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; CERR << __FUNCTION__ << ":\"" << imageFileName << "\" - no DCM_SOPInstanceUID, rejecting" << endl; return DcmQRLuceneNoSOPIUIDError; } - TermQuery tq( new Term( FieldNameDCM_SOPInstanceUID.c_str(), LuceneString( SOPInstanceUID ).c_str() ) ); -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - scoped_ptr hits( impl->indexsearcher->search(&tq) ); - if (hits->length()>0) { + if (impl->sopInstanceExists(SOPInstanceUID)) { CERR << "storeRequest():\"" << imageFileName << "\" - DCM_SOPInstanceUID already exists, rejecting" << endl; return DcmQRLuceneDoubleSOPIUIDError; } @@ -613,87 +605,19 @@ impl->refreshForSearch(); if (!impl->checkAndStoreDataForLevel( SERIE_LEVEL, dataMap )) if (!impl->checkAndStoreDataForLevel( STUDY_LEVEL, dataMap )) impl->checkAndStoreDataForLevel( PATIENT_LEVEL, dataMap ); - - impl->imageDoc->clear(); - impl->imageDoc->add( *new Field( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( IMAGE_LEVEL )->second.c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - for(TagValueMapType::const_iterator i=dataMap.begin(); i != dataMap.end(); i++) { - const Lucene_Entry &tag = DcmQRLuceneTagKeyMap.find( i->first )->second; - int tokenizeFlag = (tag.fieldType == Lucene_Entry::NAME_TYPE || tag.fieldType == Lucene_Entry::TEXT_TYPE) ? Field::INDEX_TOKENIZED : Field::INDEX_UNTOKENIZED; - impl->imageDoc->add( *new Field( DcmQRLuceneTagKeyMap.find( i->first )->second.tagStr.c_str(), i->second.c_str() , Field::STORE_YES| tokenizeFlag | Field::TERMVECTOR_NO ) ); - } - impl->imageDoc->add( *new Field( FieldNameObjectStatus.c_str(), ((isNew) ? ObjectStatusIsNew : ObjectStatusIsNotNew).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - impl->imageDoc->add( *new Field( FieldNameDicomFileName.c_str(), LuceneString(imageFileName).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - impl->imageDoc->add( *new Field( FieldNameDCM_SOPClassUID.c_str(), LuceneString(SOPClassUID).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - /* InstanceDescription */ - OFBool useDescrTag = OFTrue; - DcmTagKey descrTag = DCM_ImageComments; - LuceneString description; - if (SOPClassUID != NULL) - { - /* fill in value depending on SOP class UID (content might be improved) */ - if (strcmp(SOPClassUID, UID_GrayscaleSoftcopyPresentationStateStorage) == 0) - { - descrTag = DCM_ContentDescription; - } else if (strcmp(SOPClassUID, UID_HardcopyGrayscaleImageStorage) == 0) - { - description = "Hardcopy Grayscale Image"; - useDescrTag = OFFalse; - } else if ((strcmp(SOPClassUID, UID_BasicTextSR) == 0) || - (strcmp(SOPClassUID, UID_EnhancedSR) == 0) || - (strcmp(SOPClassUID, UID_ComprehensiveSR) == 0)) - { - OFString string; - description = "unknown SR"; - const char *name = dcmFindNameOfUID(SOPClassUID); - if (name != NULL) - description = name; - if (dset->findAndGetOFString(DCM_VerificationFlag, string) == EC_Normal) - { - description += LuceneString( ", " ); - description += LuceneString( string.c_str() ); - } - if (dset->findAndGetOFString(DCM_CompletionFlag, string) == EC_Normal) - { - description += LuceneString(", "); - description += LuceneString(string.c_str()); - } - if (dset->findAndGetOFString(DCM_CompletionFlagDescription, string) == EC_Normal) - { - description += LuceneString(", "); - description += LuceneString(string.c_str()); - } - useDescrTag = OFFalse; - } else if (strcmp(SOPClassUID, UID_StoredPrintStorage) == 0) - { - description = LuceneString("Stored Print"); - useDescrTag = OFFalse; - } - } - /* get description from attribute specified above */ - if (useDescrTag) - { - OFString string; - /* return value is irrelevant */ - dset->findAndGetOFString(descrTag, string); - description = string.c_str(); + if (verbose) { + cout << "StoreInstance:" << imageFileName << ":" << dataMap[ DCM_PatientsName ].toStdString() << endl; } - /* is dataset digitally signed? */ - DcmStack stack; - if (dset->search(DCM_DigitalSignaturesSequence, stack, ESM_fromHere, OFTrue /* searchIntoSub */) == EC_Normal) - { - /* in principle it should be checked whether there is _any_ non-empty digital signatures sequence, but ... */ - if (((DcmSequenceOfItems *)stack.top())->card() > 0) - { - if (description.length() > 0) - description += LuceneString(" (Signed)"); - else - description += LuceneString("Signed Instance"); - } - } - impl->imageDoc->add( *new Field( FieldNameInstanceDescription.c_str(), description.c_str(), Field::STORE_YES| Field::INDEX_TOKENIZED| Field::TERMVECTOR_NO ) ); - impl->indexwriter->addDocument(impl->imageDoc.get()); - impl->imageDoc->clear(); + + StringValueMapType stringDataMap; + + stringDataMap[ FieldNameObjectStatus ] = (isNew) ? ObjectStatusIsNew : ObjectStatusIsNotNew; + stringDataMap[ FieldNameDicomFileName ] = imageFileName; + stringDataMap[ FieldNameDCM_SOPClassUID ] = SOPClassUID; + + impl->addDocument( IMAGE_LEVEL, dataMap, stringDataMap ); + return EC_Normal; } diff --git a/dcmqrdb/libsrc/dcmqrdblhimpl.cc b/dcmqrdb/libsrc/dcmqrdblhimpl.cc index 83fff67..6d10456 100644 --- a/dcmqrdb/libsrc/dcmqrdblhimpl.cc +++ b/dcmqrdb/libsrc/dcmqrdblhimpl.cc @@ -26,16 +26,25 @@ */ - +#include #include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" #include "dcmtk/dcmqrdb/dcmqrdblhimpl.h" + #include using namespace std; +namespace pt = boost::posix_time; + +bool DicomUID::operator<(const DicomUID &other) const { + if (this->level < other.level) return true; + if (this->level > other.level) return false; + if (this->uid.compare(other.uid) < 0) return true; + return false; +} bool DcmQRDBLHImpl::indexExists( const string &s ) { @@ -43,8 +52,9 @@ bool DcmQRDBLHImpl::indexExists( const string &s ) { } DcmQRDBLHImpl::DcmQRDBLHImpl(const string &storageArea, - DcmQRLuceneIndexType indexType, - Result& result):storageArea(storageArea), analyzer( new LowerCaseAnalyzer()),imageDoc( new Document),indexType( indexType ) + DcmQRLuceneIndexType indexType, Result& result) + :analyzer( new LowerCaseAnalyzer()), first_modified(new pt::ptime(pt::pos_infin)), storageArea(storageArea), imageDoc( new Document), + indexType( indexType ) { if (indexType == DcmQRLuceneWriter) { bool indexExists = false; @@ -62,46 +72,34 @@ DcmQRDBLHImpl::DcmQRDBLHImpl(const string &storageArea, result = error; } } - result = recreateSearcher(); -} - -DcmQRDBLHImpl::DcmQRDBLHImpl(DcmQRDBLHImpl &other, Result &r) - :storageArea(other.storageArea), analyzer( other.analyzer ),imageDoc( new Document ),indexType( other.indexType ) { - if (indexType == DcmQRLuceneWriter) { - indexwriter = other.indexwriter; - } - indexsearcher = other.indexsearcher; - r = good; -} - - -void DcmQRDBLHImpl::refreshForSearch(void) { - if (indexType == DcmQRLuceneWriter) - indexwriter->flush(); - recreateSearcher(); + flushIndex(); + result = good; } - -DcmQRDBLHImpl::Result DcmQRDBLHImpl::recreateSearcher(void) { - if (indexType == DcmQRLuceneWriter) { - try { - indexsearcher.reset( new IndexSearcher( indexwriter->getDirectory() ) ); - } catch(CLuceneError &e) { - cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; - return error; - } - } else if (indexType == DcmQRLuceneReader && !indexsearcher) { - try { - indexsearcher.reset( new IndexSearcher( getIndexPath().c_str()) ); - } catch(CLuceneError &e) { - cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; - return error; +void DcmQRDBLHImpl::flushIndex(bool force) { + if (force || newUIDSet.size() > 0) + if (indexType == DcmQRLuceneWriter) + indexwriter->flush(); + + if (!indexsearcher || force || newUIDSet.size() > 0) { + if (indexType == DcmQRLuceneWriter) { + try { + indexsearcher.reset( new IndexSearcher( indexwriter->getDirectory() ) ); + } catch(CLuceneError &e) { + cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; + } + } else if (indexType == DcmQRLuceneReader) { + try { + indexsearcher.reset( new IndexSearcher( getIndexPath().c_str()) ); + } catch(CLuceneError &e) { + cerr << "Exception while creation of IndexSearcher caught:" << e.what() << endl; + } } } - return good; + newUIDSet.clear(); + *first_modified = pt::pos_infin; } - DcmQRDBLHImpl::~DcmQRDBLHImpl() { if (indexType == DcmQRLuceneWriter) { imageDoc->clear(); @@ -140,27 +138,86 @@ bool DcmQRDBLHImpl::checkAndStoreDataForLevel( Lucene_LEVEL level, TagValueMapTy lookupQuery.add( new TermQuery( new Term( UIDTagEntry.tagStr.c_str(), uidDataIter->second.c_str() ) ), BooleanClause::MUST ); // TODO: remove this dumb thing ---- snip ----- -refreshForSearch(); +flushIndex(); // TODO: remove this dumb thing ---- snap ----- scoped_ptr hits( indexsearcher->search(&lookupQuery) ); if (hits->length()>0) { return true; } else { - imageDoc->clear(); - imageDoc->add( *new Field( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( level )->second.c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - for(TagValueMapType::const_iterator i=dataset.begin(); i != dataset.end(); i++) { - if (i->second.length() > 0) { - const Lucene_Entry &tag = DcmQRLuceneTagKeyMap.find( i->first )->second; - if (tag.level <= level) { - int tokenizeFlag = (tag.fieldType == Lucene_Entry::NAME_TYPE || tag.fieldType == Lucene_Entry::TEXT_TYPE) ? Field::INDEX_TOKENIZED : Field::INDEX_UNTOKENIZED; - imageDoc->add( *new Field( DcmQRLuceneTagKeyMap.find( i->first )->second.tagStr.c_str(), i->second.c_str() , Field::STORE_YES| tokenizeFlag | Field::TERMVECTOR_NO ) ); - } + addDocument( level, dataset ); + return false; + } +} + +void DcmQRDBLHImpl::addDocument( Lucene_LEVEL level, const TagValueMapType &tagDataset, const StringValueMapType &stringDataset) { + imageDoc->clear(); + imageDoc->add( *new Field( FieldNameDocumentDicomLevel.c_str(), + QRLevelStringMap.find( level )->second.c_str(), + Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); + + for( int l = level; l >= PATIENT_LEVEL; l--) { + TagValueMapType::const_iterator UIDIterator = tagDataset.find( LevelToUIDTag.find( (Lucene_LEVEL)l )->second.tag ); + if ( UIDIterator == tagDataset.end() ) throw runtime_error("No UID defined for Document"); + newUIDSet.insert( DicomUID( (Lucene_LEVEL)l, UIDIterator->second ) ); + } + + for(StringValueMapType::const_iterator i=stringDataset.begin(); i != stringDataset.end(); i++) + imageDoc->add( *new Field( i->first.c_str(), i->second.c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); + + for(TagValueMapType::const_iterator i=tagDataset.begin(); i != tagDataset.end(); i++) { + if (i->second.length() > 0) { + const Lucene_Entry &tag = DcmQRLuceneTagKeyMap.find( i->first )->second; + if (tag.level <= level) { + int tokenizeFlag = (tag.fieldType == Lucene_Entry::NAME_TYPE || tag.fieldType == Lucene_Entry::TEXT_TYPE) ? Field::INDEX_TOKENIZED : Field::INDEX_UNTOKENIZED; + imageDoc->add( *new Field( tag.tagStr.c_str(), i->second.c_str() , Field::STORE_YES| tokenizeFlag | Field::TERMVECTOR_NO ) ); } } - indexwriter->addDocument(imageDoc.get()); - return false; } + indexwriter->addDocument(imageDoc.get()); + if (*first_modified == pt::pos_infin) *first_modified = pt::microsec_clock::local_time(); +} + +bool DcmQRDBLHImpl::sopInstanceExists( const LuceneString &sopInstanceUID ) { + if ( newUIDSet.find( DicomUID( IMAGE_LEVEL, sopInstanceUID ) ) != newUIDSet.end() ) return true; + + TermQuery tq( new Term( FieldNameDCM_SOPInstanceUID.c_str(), sopInstanceUID.c_str() ) ); + scoped_ptr hits( indexsearcher->search(&tq) ); + if (hits->length()>0) return true; + return false; +} + + +void DcmQRDBLHImpl::findQuery(Query* query, int upToDateMillis, const DicomUID &uid) { + bool queriedDataFlushed = false; + if (uid.uid.size() > 0) { + if ( newUIDSet.find( uid ) == newUIDSet.end() ) queriedDataFlushed = true; + } + if (!queriedDataFlushed) { + if ( *first_modified + pt::millisec( upToDateMillis ) < pt::microsec_clock::local_time() ) + flushIndex(); + } + findResponseHitCounter = 0; + findResponseHits.reset( indexsearcher->search(query) ); } +void DcmQRDBLHImpl::moveQuery(Query* query, int upToDateMillis, const DicomUID &uid) { + bool queriedDataFlushed = false; + if (uid.uid.size() > 0) { + if ( newUIDSet.find( uid ) == newUIDSet.end() ) queriedDataFlushed = true; + } + if (!queriedDataFlushed) { + if ( *first_modified + pt::millisec( upToDateMillis ) < pt::microsec_clock::local_time()) + flushIndex(); + } + moveResponseHitCounter = 0; + moveResponseHits.reset( indexsearcher->search(query) ); +} + + + +IndexReader& DcmQRDBLHImpl::getIndexReader() { + flushIndex(); + return *indexsearcher->getReader(); +} From ef496a6745ce3ce0b8a509a9b51771cb634aebbc Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Tue, 23 Feb 2010 16:32:38 -0500 Subject: [PATCH 08/12] show duplicate file names --- dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h | 2 +- dcmqrdb/libsrc/dcmqrdbl.cc | 5 +++-- dcmqrdb/libsrc/dcmqrdblhimpl.cc | 12 ++++++++---- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h index 70be2e5..cf8c4ed 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdblhimpl.h @@ -95,7 +95,7 @@ class DcmQRDBLHImpl { // TODO: implement Singleton based IndexWriter and IndexSe IndexReader& getIndexReader(); void addDocument( Lucene_LEVEL level, const TagValueMapType &tagDataset, const StringValueMapType &stringDataset=StringValueMapType() ); - bool sopInstanceExists( const LuceneString &sopInstanceUID ); + bool sopInstanceExists( const LuceneString &sopInstanceUID, string &existingFileName ); void findQuery(Query* query, int upToDateMillis, const DicomUID &uid); void moveQuery(Query* query, int upToDateMillis, const DicomUID &uid); diff --git a/dcmqrdb/libsrc/dcmqrdbl.cc b/dcmqrdb/libsrc/dcmqrdbl.cc index 9373c14..68238da 100644 --- a/dcmqrdb/libsrc/dcmqrdbl.cc +++ b/dcmqrdb/libsrc/dcmqrdbl.cc @@ -581,8 +581,9 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; CERR << __FUNCTION__ << ":\"" << imageFileName << "\" - no DCM_SOPInstanceUID, rejecting" << endl; return DcmQRLuceneNoSOPIUIDError; } - if (impl->sopInstanceExists(SOPInstanceUID)) { - CERR << "storeRequest():\"" << imageFileName << "\" - DCM_SOPInstanceUID already exists, rejecting" << endl; + string existingFileName; + if (impl->sopInstanceExists(SOPInstanceUID, existingFileName)) { + CERR << "storeRequest():\"" << imageFileName << "\" - DCM_SOPInstanceUID already exists in \"" << existingFileName << "\", rejecting" << endl; return DcmQRLuceneDoubleSOPIUIDError; } } diff --git a/dcmqrdb/libsrc/dcmqrdblhimpl.cc b/dcmqrdb/libsrc/dcmqrdblhimpl.cc index 6d10456..ea3c12e 100644 --- a/dcmqrdb/libsrc/dcmqrdblhimpl.cc +++ b/dcmqrdb/libsrc/dcmqrdblhimpl.cc @@ -53,7 +53,7 @@ bool DcmQRDBLHImpl::indexExists( const string &s ) { DcmQRDBLHImpl::DcmQRDBLHImpl(const string &storageArea, DcmQRLuceneIndexType indexType, Result& result) - :analyzer( new LowerCaseAnalyzer()), first_modified(new pt::ptime(pt::pos_infin)), storageArea(storageArea), imageDoc( new Document), + :analyzer( new LowerCaseWhiteSpaceAnalyzer()), first_modified(new pt::ptime(pt::pos_infin)), storageArea(storageArea), imageDoc( new Document), indexType( indexType ) { if (indexType == DcmQRLuceneWriter) { @@ -177,12 +177,16 @@ void DcmQRDBLHImpl::addDocument( Lucene_LEVEL level, const TagValueMapType &tagD if (*first_modified == pt::pos_infin) *first_modified = pt::microsec_clock::local_time(); } -bool DcmQRDBLHImpl::sopInstanceExists( const LuceneString &sopInstanceUID ) { - if ( newUIDSet.find( DicomUID( IMAGE_LEVEL, sopInstanceUID ) ) != newUIDSet.end() ) return true; +bool DcmQRDBLHImpl::sopInstanceExists( const LuceneString &sopInstanceUID, string &existingFileName ) { + if ( newUIDSet.find( DicomUID( IMAGE_LEVEL, sopInstanceUID ) ) != newUIDSet.end() ) flushIndex(); TermQuery tq( new Term( FieldNameDCM_SOPInstanceUID.c_str(), sopInstanceUID.c_str() ) ); scoped_ptr hits( indexsearcher->search(&tq) ); - if (hits->length()>0) return true; + if (hits->length()>0) { + Document &responseDoc = hits->doc( 0 ); + existingFileName = LuceneString( responseDoc.get( FieldNameDicomFileName.c_str() ) ).toStdString(); + return true; + } return false; } From 3c764e8801d820a14c1b25def750276ce6d42f85 Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Tue, 23 Feb 2010 16:33:18 -0500 Subject: [PATCH 09/12] better Analyser for Dicom --- .../include/dcmtk/dcmqrdb/lowercaseanalyzer.h | 15 ++++++++--- dcmqrdb/libsrc/lowercaseanalyzer.cc | 26 ++++++++++++++----- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h b/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h index 0dfbc14..3da6c52 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/lowercaseanalyzer.h @@ -3,12 +3,19 @@ #include +class LowerCaseWhiteSpaceTokenizer: public lucene::analysis::CharTokenizer { +public: + LowerCaseWhiteSpaceTokenizer(lucene::util::Reader* in); + virtual ~LowerCaseWhiteSpaceTokenizer(); +protected: + bool isTokenChar(const TCHAR c) const; + TCHAR normalize(const TCHAR chr) const; +}; - -class LowerCaseAnalyzer: public lucene::analysis::Analyzer { +class LowerCaseWhiteSpaceAnalyzer: public lucene::analysis::Analyzer { public: - LowerCaseAnalyzer(); - virtual ~LowerCaseAnalyzer(); + LowerCaseWhiteSpaceAnalyzer(); + virtual ~LowerCaseWhiteSpaceAnalyzer(); lucene::analysis::TokenStream* tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); lucene::analysis::TokenStream* reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader); }; diff --git a/dcmqrdb/libsrc/lowercaseanalyzer.cc b/dcmqrdb/libsrc/lowercaseanalyzer.cc index 047c006..9beb211 100644 --- a/dcmqrdb/libsrc/lowercaseanalyzer.cc +++ b/dcmqrdb/libsrc/lowercaseanalyzer.cc @@ -1,18 +1,32 @@ #include "dcmtk/dcmqrdb/lowercaseanalyzer.h" +#include "ctype.h" using namespace lucene::analysis; using namespace lucene::util; -LowerCaseAnalyzer::LowerCaseAnalyzer(){} -LowerCaseAnalyzer::~LowerCaseAnalyzer(){} -TokenStream* LowerCaseAnalyzer::tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader){ - return new LowerCaseTokenizer(reader); + +LowerCaseWhiteSpaceTokenizer::LowerCaseWhiteSpaceTokenizer(lucene::util::Reader* in):CharTokenizer(in) { +} +LowerCaseWhiteSpaceTokenizer::~LowerCaseWhiteSpaceTokenizer() {} +bool LowerCaseWhiteSpaceTokenizer::isTokenChar(const TCHAR c) const { + if (ispunct(c) || isspace(c) || iscntrl(c)) return false; + return true; +} +TCHAR LowerCaseWhiteSpaceTokenizer::normalize(const TCHAR chr) const { + return tolower( chr ); +} + + +LowerCaseWhiteSpaceAnalyzer::LowerCaseWhiteSpaceAnalyzer(){} +LowerCaseWhiteSpaceAnalyzer::~LowerCaseWhiteSpaceAnalyzer(){} +TokenStream* LowerCaseWhiteSpaceAnalyzer::tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader){ + return new LowerCaseWhiteSpaceTokenizer(reader); } -TokenStream* LowerCaseAnalyzer::reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader) +TokenStream* LowerCaseWhiteSpaceAnalyzer::reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader) { Tokenizer* tokenizer = static_cast(getPreviousTokenStream()); if (tokenizer == NULL) { - tokenizer = new LowerCaseTokenizer(reader); + tokenizer = new LowerCaseWhiteSpaceTokenizer(reader); setPreviousTokenStream(tokenizer); } else tokenizer->reset(reader); From fef076fbd000bca972f8b3046d7bf67e8082ff2d Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 4 Mar 2010 16:20:37 -0500 Subject: [PATCH 10/12] more verbose errors --- dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h | 14 +- dcmqrdb/libsrc/dcmqrdbl.cc | 255 +++++++++-------------- 2 files changed, 110 insertions(+), 159 deletions(-) diff --git a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h index eadff81..55ff2f9 100644 --- a/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h +++ b/dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbl.h @@ -23,17 +23,15 @@ #include #include -#define LUCENEPATH "lucene_index" +#include "dcmtk/dcmnet/dimse.h" +#include "dcmtk/dcmqrdb/luceneenums.h" + + class DcmQueryRetrieveConfig; class DcmQRDBLHImpl; +enum DcmQRLuceneIndexType; -enum DcmQRLuceneIndexType -{ - DcmQRLuceneReader, - DcmQRLuceneWriter, - DcmQRLuceneModifier -}; class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle @@ -47,6 +45,7 @@ class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle void printIndexFile(void); virtual OFCondition storeRequest(const char* SOPClassUID, const char* SOPInstanceUID, const char* imageFileName, DcmQueryRetrieveDatabaseStatus* status, OFBool isNew = OFTrue); static bool indexExists( const OFString &s ); + void setVerbose(bool v); private: virtual void setIdentifierChecking(OFBool checkFind, OFBool checkMove); virtual void setDebugLevel(int debugLevel); @@ -71,6 +70,7 @@ class DcmQueryRetrieveLuceneIndexHandle : public DcmQueryRetrieveDatabaseHandle /// current debug level int debugLevel; + bool verbose; boost::scoped_ptr impl; diff --git a/dcmqrdb/libsrc/dcmqrdbl.cc b/dcmqrdb/libsrc/dcmqrdbl.cc index 072947b..c652276 100644 --- a/dcmqrdb/libsrc/dcmqrdbl.cc +++ b/dcmqrdb/libsrc/dcmqrdbl.cc @@ -19,33 +19,30 @@ #include -#include "dcmtk/dcmqrdb/dcmqrdbl.h" -#include "dcmqrdblhimpl.h" - -#include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" -#include "boost/format.hpp" -#include "boost/lambda/lambda.hpp" -#include "boost/bind.hpp" -#include -#include -#include #include +#include +#include +#include #include #include #include #include #include +#include +#include +#include #include "dcmtk/dcmqrdb/dcmqrdbl-taglist.h" #include "dcmtk/dcmqrdb/dcmqrdbl.h" +#include "dcmtk/dcmqrdb/dcmqrdblhimpl.h" #include "dcmtk/ofstd/ofstdinc.h" #include "dcmtk/dcmdata/dcfilefo.h" @@ -56,32 +53,76 @@ #include "dcmtk/dcmqrdb/dcmqrcnf.h" -#include "dcmqrdblhimpl.h" +const OFConditionConst DcmQRLuceneNoSOPIUIDErrorC(OFM_imagectn, 0x002, OF_error, "DcmQR Lucene no DCM_SOPInstanceUID"); +const OFCondition DcmQRLuceneNoSOPIUIDError(DcmQRLuceneNoSOPIUIDErrorC); + +const OFConditionConst DcmQRLuceneDoubleSOPIUIDErrorC(OFM_imagectn, 0x003, OF_error, "DcmQR Lucene double DCM_SOPInstanceUID"); +const OFCondition DcmQRLuceneDoubleSOPIUIDError(DcmQRLuceneDoubleSOPIUIDErrorC); + +const OFConditionConst DcmQRLuceneIndexOpenErrorC(OFM_imagectn, 0x018, OF_error, "Could not open Lucene Index"); +const OFCondition DcmQRLuceneIndexOpenError(DcmQRLuceneIndexOpenErrorC); + +const OFConditionConst DcmQRLuceneIndex_FIND_Failed_UnableToProcessC(OFM_imagectn, 0x019, OF_error, "STATUS_FIND_Failed_UnableToProcess"); +const OFCondition DcmQRLuceneIndex_FIND_Failed_UnableToProcess(DcmQRLuceneIndex_FIND_Failed_UnableToProcessC); + +const OFConditionConst DcmQRLuceneIndex_FIND_Refused_OutOfResourcesC(OFM_imagectn, 0x01A, OF_error, "STATUS_FIND_Refused_OutOfResources"); +const OFCondition DcmQRLuceneIndex_FIND_Refused_OutOfResources(DcmQRLuceneIndex_FIND_Refused_OutOfResourcesC); + +const OFConditionConst DcmQRLuceneIndex_FIND_Refused_SOPClassNotSupportedC(OFM_imagectn, 0x01B, OF_error, "STATUS_FIND_Refused_SOPClassNotSupported"); +const OFCondition DcmQRLuceneIndex_FIND_Refused_SOPClassNotSupported(DcmQRLuceneIndex_FIND_Refused_SOPClassNotSupportedC); + +const OFConditionConst DcmQRLuceneIndex_FIND_Failed_IdentifierDoesNotMatchSOPClassC(OFM_imagectn, 0x01C, OF_error, "STATUS_FIND_Failed_IdentifierDoesNotMatchSOPClass"); +const OFCondition DcmQRLuceneIndex_FIND_Failed_IdentifierDoesNotMatchSOPClass(DcmQRLuceneIndex_FIND_Failed_IdentifierDoesNotMatchSOPClassC); + +const OFConditionConst DcmQRLuceneIndex_FIND_Failed_Missing_QR_LevelC(OFM_imagectn, 0x01D, OF_error, "STATUS_FIND_Failed_Missing_QR_Level"); +const OFCondition DcmQRLuceneIndex_FIND_Failed_Missing_QR_Level(DcmQRLuceneIndex_FIND_Failed_Missing_QR_LevelC); + +const OFConditionConst DcmQRLuceneIndex_MOVE_Failed_SOPClassNotSupportedC(OFM_imagectn, 0x01E, OF_error, "STATUS_MOVE_Failed_SOPClassNotSupported"); +const OFCondition DcmQRLuceneIndex_MOVE_Failed_SOPClassNotSupported(DcmQRLuceneIndex_MOVE_Failed_SOPClassNotSupportedC); + +const OFConditionConst DcmQRLuceneIndex_MOVE_Failed_IdentifierDoesNotMatchSOPClassC(OFM_imagectn, 0x01F, OF_error, "STATUS_MOVE_Failed_IdentifierDoesNotMatchSOPClass"); +const OFCondition DcmQRLuceneIndex_MOVE_Failed_IdentifierDoesNotMatchSOPClass(DcmQRLuceneIndex_MOVE_Failed_IdentifierDoesNotMatchSOPClassC); + +const OFConditionConst DcmQRLuceneIndex_MOVE_Failed_UnableToProcessC(OFM_imagectn, 0x020, OF_error, "STATUS_MOVE_Failed_UnableToProcess"); +const OFCondition DcmQRLuceneIndex_MOVE_Failed_UnableToProcess(DcmQRLuceneIndex_MOVE_Failed_UnableToProcessC); + +const OFConditionConst DcmQRLuceneIndex_STORE_Error_CannotUnderstandC(OFM_imagectn, 0x021, OF_error, "STATUS_STORE_Error_CannotUnderstand"); +const OFCondition DcmQRLuceneIndex_STORE_Error_CannotUnderstand(DcmQRLuceneIndex_STORE_Error_CannotUnderstandC); + + +const int IndexRequestUpToDateMillis = 5000; bool DcmQueryRetrieveLuceneIndexHandle::indexExists( const OFString &s ) { - return DcmQRDBLHImpl::indexExists( s ); + return DcmQRDBLHImpl::indexExists( s.c_str() ); } DcmQueryRetrieveLuceneIndexHandle::DcmQueryRetrieveLuceneIndexHandle( const OFString &storageArea, DcmQRLuceneIndexType indexType, - OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10), - impl( new DcmQRDBLHImpl(storageArea, indexType, result) ) {} - + OFCondition& result):doCheckFindIdentifier(OFFalse),doCheckMoveIdentifier(OFFalse),debugLevel(10),verbose(false) { + DcmQRDBLHImpl::Result r; + impl.reset( new DcmQRDBLHImpl(storageArea.c_str(), indexType, r) ); + result = (r==DcmQRDBLHImpl::good) ? EC_Normal : DcmQRLuceneIndexOpenError; + } + + DcmQueryRetrieveLuceneIndexHandle::~DcmQueryRetrieveLuceneIndexHandle() {} +void DcmQueryRetrieveLuceneIndexHandle::setVerbose(bool v) { + verbose = v; +} void DcmQueryRetrieveLuceneIndexHandle::printIndexFile(void) { dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; dbdebug(1,"%s:", __FUNCTION__) ; - IndexReader *reader = impl->indexsearcher->getReader(); + IndexReader &reader = impl->getIndexReader(); Document myDoc; - for( int i = 0; i < reader->numDocs(); i++) { - reader->document( i, myDoc, NULL ); + for( int i = 0; i < reader.numDocs(); i++) { + reader.document( i, myDoc, NULL ); COUT << LuceneString( (const TCHAR*)myDoc.toString() ).toStdString() << std::endl; myDoc.clear(); } @@ -228,9 +269,9 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; if (qrClassI != StringQRClassMap.end() && (qrClassI->second.qtype == QueryInfo::MOVE || qrClassI->second.qtype == QueryInfo::GET)) { rootLevel = qrClassI->second.qclass ; } else { - dbdebug(1, "%s: STATUS_FIND_Refused_SOPClassNotSupported", __FUNCTION__) ; + dbdebug(1, "%s: STATUS_MOVE_Failed_SOPClassNotSupported", __FUNCTION__) ; status->setStatus(STATUS_MOVE_Failed_SOPClassNotSupported); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_SOPClassNotSupported) ; } // Gather all data from Request TagMultiStdValueMapType dataMap; @@ -252,9 +293,9 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; Lucene_LEVEL queryLevel = PATIENT_LEVEL; TagMultiStdValueMapType::iterator dataMapIter = dataMap.find( DCM_QueryRetrieveLevel ); if (dataMapIter == dataMap.end()) { - status->setStatus(STATUS_FIND_Failed_IdentifierDoesNotMatchSOPClass); + status->setStatus(STATUS_MOVE_Failed_IdentifierDoesNotMatchSOPClass); dbdebug(1,"%s: missing Query/Retrieve Level",__FUNCTION__); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_IdentifierDoesNotMatchSOPClass) ; } else { std::string qrLevelString = dataMapIter->second; // Skip this line if you want strict comparison @@ -265,7 +306,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } else { dbdebug(1, "%s : Illegal query level (%s)",__FUNCTION__, qrLevelString.c_str()) ; status->setStatus(STATUS_MOVE_Failed_UnableToProcess); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_UnableToProcess) ; } dataMap.erase( dataMapIter ); // Remove the QueryLevel - since we found it } @@ -284,16 +325,19 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; if (doCheckFindIdentifier && queryLevel > maxLevel) { status->setStatus(STATUS_MOVE_Failed_UnableToProcess); dbdebug(1, "%s : QR-Level incompatible with Information Model (level %i)",__FUNCTION__,queryLevel) ; - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_UnableToProcess) ; } queryLevel = std::min(maxLevel,queryLevel); + DicomUID mostRestrictiveUID; // add UIDs above Level to Lucene Query for( int l = baseLevel; l < maxLevel; l++) { dataMapIter = dataMap.find( LevelToUIDTag.find( (Lucene_LEVEL)l )->second.tag ); if ( dataMapIter != dataMap.end() && dataMapIter->second.length() > 0) { const Lucene_Entry &UIDTag = LevelToUIDTag.find( (Lucene_LEVEL)l )->second; - TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), LuceneString( dataMapIter->second.c_str() ).c_str() )); + LuceneString uidString( dataMapIter->second ); + mostRestrictiveUID = DicomUID( (Lucene_LEVEL)l, uidString ); + TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), uidString.c_str() )); baseQuery.add( tq, BooleanClause::MUST ); dataMap.erase( dataMapIter ); } @@ -320,11 +364,11 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } else if (entryData.level < queryLevel) { dbdebug(1, "%s :Multiple Unique Key found above Query Level (level %i)",__FUNCTION__,entryData.level) ; status->setStatus(STATUS_MOVE_Failed_IdentifierDoesNotMatchSOPClass); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_IdentifierDoesNotMatchSOPClass) ; } else { // entryData.level > queryLevel dbdebug(1, "%s :Key (%s,level %i)found beyond query level (level %i)",__FUNCTION__,entryData.tag.toString().c_str(), entryData.level, queryLevel) ; status->setStatus(STATUS_MOVE_Failed_UnableToProcess); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_MOVE_Failed_UnableToProcess) ; } } if (multiQuery->getClauseCount() != 0) @@ -332,11 +376,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; else delete(multiQuery); dbdebug(2, "%s: searching index: %s", __FUNCTION__, LuceneString((const TCHAR*)baseQuery.toString(NULL)).toStdString().c_str()); - impl->moveResponseHitCounter = 0; -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - impl->moveResponseHits.reset( impl->indexsearcher->search(&baseQuery) ); + impl->moveQuery(&baseQuery, IndexRequestUpToDateMillis, mostRestrictiveUID); dbdebug(1, "%s found %i items", __FUNCTION__, impl->moveResponseHits->length()); @@ -369,7 +409,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; if ( *findResponseIdentifiers == NULL ) { dbdebug(1, "%s : could allocate ResponseIdentifiers DataSet - STATUS_FIND_Refused_OutOfResources\n", __FUNCTION__) ; status->setStatus(STATUS_FIND_Refused_OutOfResources); - return (DcmQRLuceneIndexError); + return (DcmQRLuceneIndex_FIND_Refused_OutOfResources); } /*** Put responses @@ -397,19 +437,19 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; DcmElement *dce = newDicomElement( *i ); if (dce == NULL) { status->setStatus(STATUS_FIND_Refused_OutOfResources); - return DcmQRLuceneIndexError; + return DcmQRLuceneIndex_FIND_Refused_OutOfResources; } OFCondition ec = dce->putString(responseValue.c_str()); if (ec != EC_Normal) { CERR << __FUNCTION__ << ": cannot putString()" << endl; status->setStatus(STATUS_FIND_Failed_UnableToProcess); - return DcmQRLuceneIndexError; + return DcmQRLuceneIndex_FIND_Failed_UnableToProcess; } ec = (*findResponseIdentifiers)->insert(dce, OFTrue /*replaceOld*/); if (ec != EC_Normal) { CERR << __FUNCTION__ << ": cannot insert()" << endl; status->setStatus(STATUS_FIND_Failed_UnableToProcess); - return DcmQRLuceneIndexError; + return DcmQRLuceneIndex_FIND_Failed_UnableToProcess; } } DU_putStringDOElement(*findResponseIdentifiers, @@ -439,7 +479,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } else { dbdebug(1, "%s: STATUS_FIND_Refused_SOPClassNotSupported", __FUNCTION__) ; status->setStatus(STATUS_FIND_Refused_SOPClassNotSupported); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Refused_SOPClassNotSupported) ; } // Gather all data from Request @@ -464,7 +504,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; if (dataMapIter == dataMap.end()) { status->setStatus(STATUS_FIND_Failed_IdentifierDoesNotMatchSOPClass); dbdebug(1,"%s: missing Query/Retrieve Level",__FUNCTION__); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Failed_Missing_QR_Level) ; } else { std::string qrLevelString = dataMapIter->second; // Skip this line if you want strict comparison @@ -475,7 +515,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } else { dbdebug(1, "%s : Illegal query level (%s)",__FUNCTION__, qrLevelString.c_str()) ; status->setStatus(STATUS_FIND_Failed_UnableToProcess); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Failed_UnableToProcess) ; } dataMap.erase( dataMapIter ); // Remove the QueryLevel - since we found it } @@ -488,20 +528,23 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; Lucene_LEVEL maxLevel = IMAGE_LEVEL; if (rootLevel == PATIENT_STUDY) maxLevel = STUDY_LEVEL; if (doCheckFindIdentifier && queryLevel > maxLevel) { - status->setStatus(STATUS_MOVE_Failed_UnableToProcess); + status->setStatus(STATUS_FIND_Failed_UnableToProcess); dbdebug(1, "%s : QR-Level incompatible with Information Model (level %i)",__FUNCTION__,queryLevel) ; - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Failed_UnableToProcess) ; } queryLevel = std::min(maxLevel,queryLevel); // add Level to Lucene Query boolQuery.add( new TermQuery( new Term( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( queryLevel)->second.c_str() ) ) , BooleanClause::MUST ); + DicomUID mostRestrictiveUID; // add UIDs above Level to Lucene Query for( int l = baseLevel; l < maxLevel; l++) { dataMapIter = dataMap.find( LevelToUIDTag.find( (Lucene_LEVEL)l )->second.tag ); if ( dataMapIter != dataMap.end() && dataMapIter->second.length() > 0) { const Lucene_Entry &UIDTag = LevelToUIDTag.find( (Lucene_LEVEL)l )->second; - TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), LuceneString( dataMapIter->second.c_str() ).c_str() )); + LuceneString uidString( dataMapIter->second ); + mostRestrictiveUID = DicomUID( (Lucene_LEVEL)l, uidString ); + TermQuery *tq = new TermQuery( new Term( UIDTag.tagStr.c_str(), uidString.c_str() )); boolQuery.add( tq, BooleanClause::MUST ); } } @@ -522,12 +565,12 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; if (entryData.keyAttr != Lucene_Entry::UNIQUE_KEY) { dbdebug(1, "%s :Non Unique Key found (level %i)",__FUNCTION__,entryData.level) ; status->setStatus(STATUS_FIND_Failed_IdentifierDoesNotMatchSOPClass); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Failed_IdentifierDoesNotMatchSOPClass) ; } } else { // entryData.level > queryLevel dbdebug(1, "%s :Key (%s,level %i)found beyond query level (level %i)",__FUNCTION__,entryData.tag.toString().c_str(), entryData.level, queryLevel) ; status->setStatus(STATUS_FIND_Failed_UnableToProcess); - return (DcmQRLuceneIndexError) ; + return (DcmQRLuceneIndex_FIND_Failed_UnableToProcess) ; } // add to findRequestList if (entryData.level <= queryLevel) @@ -535,11 +578,7 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; } dbdebug(2, "%s: searching index: %s", __FUNCTION__, LuceneString((const TCHAR*)boolQuery.toString(NULL)).toStdString().c_str()); - impl->findResponseHitCounter = 0; -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - impl->findResponseHits.reset( impl->indexsearcher->search(&boolQuery) ); + impl->findQuery(&boolQuery, IndexRequestUpToDateMillis, mostRestrictiveUID); dbdebug(1, "%s found %i items", __FUNCTION__, impl->findResponseHits->length()); if (impl->findResponseHits->length() == 0) { @@ -572,20 +611,16 @@ dbdebug(1, "%s: start (line %i)", __FUNCTION__, __LINE__) ; CERR << "Cannot open file: " << imageFileName << ": " << strerror(errno) << endl; status->setStatus(STATUS_STORE_Error_CannotUnderstand); - return (DcmQRLuceneIndexError); + return (DcmQRLuceneIndex_STORE_Error_CannotUnderstand); } { if (SOPInstanceUID == NULL) { CERR << __FUNCTION__ << ":\"" << imageFileName << "\" - no DCM_SOPInstanceUID, rejecting" << endl; return DcmQRLuceneNoSOPIUIDError; } - TermQuery tq( new Term( FieldNameDCM_SOPInstanceUID.c_str(), LuceneString( SOPInstanceUID ).c_str() ) ); -// TODO: remove this dumb thing ---- snip ----- -impl->refreshForSearch(); -// TODO: remove this dumb thing ---- snap ----- - scoped_ptr hits( impl->indexsearcher->search(&tq) ); - if (hits->length()>0) { - CERR << "storeRequest():\"" << imageFileName << "\" - DCM_SOPInstanceUID already exists, rejecting" << endl; + string existingFileName; + if (impl->sopInstanceExists(SOPInstanceUID, existingFileName)) { + CERR << "storeRequest():\"" << imageFileName << "\" - DCM_SOPInstanceUID already exists in \"" << existingFileName << "\", rejecting" << endl; return DcmQRLuceneDoubleSOPIUIDError; } } @@ -608,87 +643,19 @@ impl->refreshForSearch(); if (!impl->checkAndStoreDataForLevel( SERIE_LEVEL, dataMap )) if (!impl->checkAndStoreDataForLevel( STUDY_LEVEL, dataMap )) impl->checkAndStoreDataForLevel( PATIENT_LEVEL, dataMap ); - - impl->imageDoc->clear(); - impl->imageDoc->add( *new Field( FieldNameDocumentDicomLevel.c_str(), QRLevelStringMap.find( IMAGE_LEVEL )->second.c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - for(TagValueMapType::const_iterator i=dataMap.begin(); i != dataMap.end(); i++) { - const Lucene_Entry &tag = DcmQRLuceneTagKeyMap.find( i->first )->second; - int tokenizeFlag = (tag.fieldType == Lucene_Entry::NAME_TYPE || tag.fieldType == Lucene_Entry::TEXT_TYPE) ? Field::INDEX_TOKENIZED : Field::INDEX_UNTOKENIZED; - impl->imageDoc->add( *new Field( DcmQRLuceneTagKeyMap.find( i->first )->second.tagStr.c_str(), i->second.c_str() , Field::STORE_YES| tokenizeFlag | Field::TERMVECTOR_NO ) ); - } - impl->imageDoc->add( *new Field( FieldNameObjectStatus.c_str(), ((isNew) ? ObjectStatusIsNew : ObjectStatusIsNotNew).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - impl->imageDoc->add( *new Field( FieldNameDicomFileName.c_str(), LuceneString(imageFileName).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - impl->imageDoc->add( *new Field( FieldNameDCM_SOPClassUID.c_str(), LuceneString(SOPClassUID).c_str(), Field::STORE_YES| Field::INDEX_UNTOKENIZED| Field::TERMVECTOR_NO ) ); - /* InstanceDescription */ - OFBool useDescrTag = OFTrue; - DcmTagKey descrTag = DCM_ImageComments; - LuceneString description; - if (SOPClassUID != NULL) - { - /* fill in value depending on SOP class UID (content might be improved) */ - if (strcmp(SOPClassUID, UID_GrayscaleSoftcopyPresentationStateStorage) == 0) - { - descrTag = DCM_ContentDescription; - } else if (strcmp(SOPClassUID, UID_HardcopyGrayscaleImageStorage) == 0) - { - description = "Hardcopy Grayscale Image"; - useDescrTag = OFFalse; - } else if ((strcmp(SOPClassUID, UID_BasicTextSR) == 0) || - (strcmp(SOPClassUID, UID_EnhancedSR) == 0) || - (strcmp(SOPClassUID, UID_ComprehensiveSR) == 0)) - { - OFString string; - description = "unknown SR"; - const char *name = dcmFindNameOfUID(SOPClassUID); - if (name != NULL) - description = name; - if (dset->findAndGetOFString(DCM_VerificationFlag, string) == EC_Normal) - { - description += LuceneString( ", " ); - description += LuceneString( string.c_str() ); - } - if (dset->findAndGetOFString(DCM_CompletionFlag, string) == EC_Normal) - { - description += LuceneString(", "); - description += LuceneString(string.c_str()); - } - if (dset->findAndGetOFString(DCM_CompletionFlagDescription, string) == EC_Normal) - { - description += LuceneString(", "); - description += LuceneString(string.c_str()); - } - useDescrTag = OFFalse; - } else if (strcmp(SOPClassUID, UID_StoredPrintStorage) == 0) - { - description = LuceneString("Stored Print"); - useDescrTag = OFFalse; - } - } - /* get description from attribute specified above */ - if (useDescrTag) - { - OFString string; - /* return value is irrelevant */ - dset->findAndGetOFString(descrTag, string); - description = string.c_str(); + if (verbose) { + cout << "StoreInstance:" << imageFileName << ":" << dataMap[ DCM_PatientsName ].toStdString() << endl; } - /* is dataset digitally signed? */ - DcmStack stack; - if (dset->search(DCM_DigitalSignaturesSequence, stack, ESM_fromHere, OFTrue /* searchIntoSub */) == EC_Normal) - { - /* in principle it should be checked whether there is _any_ non-empty digital signatures sequence, but ... */ - if (((DcmSequenceOfItems *)stack.top())->card() > 0) - { - if (description.length() > 0) - description += LuceneString(" (Signed)"); - else - description += LuceneString("Signed Instance"); - } - } - impl->imageDoc->add( *new Field( FieldNameInstanceDescription.c_str(), description.c_str(), Field::STORE_YES| Field::INDEX_TOKENIZED| Field::TERMVECTOR_NO ) ); - impl->indexwriter->addDocument(impl->imageDoc.get()); - impl->imageDoc->clear(); + + StringValueMapType stringDataMap; + + stringDataMap[ FieldNameObjectStatus ] = (isNew) ? ObjectStatusIsNew : ObjectStatusIsNotNew; + stringDataMap[ FieldNameDicomFileName ] = imageFileName; + stringDataMap[ FieldNameDCM_SOPClassUID ] = SOPClassUID; + + impl->addDocument( IMAGE_LEVEL, dataMap, stringDataMap ); + return EC_Normal; } @@ -743,20 +710,4 @@ DcmQueryRetrieveDatabaseHandle *DcmQueryRetrieveLuceneIndexWriterHandleFactory:: } - -LowerCaseAnalyzer::LowerCaseAnalyzer(){} -LowerCaseAnalyzer::~LowerCaseAnalyzer(){} -TokenStream* LowerCaseAnalyzer::tokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader){ - return new LowerCaseTokenizer(reader); -} -TokenStream* LowerCaseAnalyzer::reusableTokenStream(const TCHAR* fieldName, CL_NS(util)::Reader* reader) -{ - Tokenizer* tokenizer = static_cast(getPreviousTokenStream()); - if (tokenizer == NULL) { - tokenizer = new LowerCaseTokenizer(reader); - setPreviousTokenStream(tokenizer); - } else - tokenizer->reset(reader); - return tokenizer; -} From 8a1ab105777fdf38a33f441e8982255956f85090 Mon Sep 17 00:00:00 2001 From: Henning Meyer Date: Thu, 1 Apr 2010 14:04:21 -0400 Subject: [PATCH 11/12] included JASPERLIBS --- dcmnet/apps/Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dcmnet/apps/Makefile.in b/dcmnet/apps/Makefile.in index 1cd48f0..eeb4409 100644 --- a/dcmnet/apps/Makefile.in +++ b/dcmnet/apps/Makefile.in @@ -20,7 +20,7 @@ dcmtlsdir = $(top_srcdir)/../dcmtls LOCALINCLUDES = -I$(ofstddir)/include -I$(dcmdatadir)/include -I$(dcmtlsdir)/include LIBDIRS = -L$(top_srcdir)/libsrc -L$(ofstddir)/libsrc -L$(dcmdatadir)/libsrc \ -L$(dcmtlsdir)/libsrc -LOCALLIBS = -ldcmnet -ldcmdata -lofstd $(ZLIBLIBS) $(TCPWRAPPERLIBS) +LOCALLIBS = -ldcmnet -ldcmdata -lofstd $(ZLIBLIBS) $(TCPWRAPPERLIBS) $(JASPERLIBS) DCMTLSLIBS = -ldcmtls objs = echoscu.o storescu.o storescp.o findscu.o movescu.o termscu.o From 0b8da60111020033802419139d24d39207c74332 Mon Sep 17 00:00:00 2001 From: Dicom User Date: Wed, 8 Sep 2010 16:53:57 -0400 Subject: [PATCH 12/12] added Makefile switches --- dcmnet/apps/Makefile.dep | 560 ++++++++------- dcmnet/apps/Makefile.in | 12 +- dcmnet/libsrc/Makefile.dep | 1369 ++++++++++++++++++------------------ 3 files changed, 959 insertions(+), 982 deletions(-) diff --git a/dcmnet/apps/Makefile.dep b/dcmnet/apps/Makefile.dep index 72215cb..ea65677 100644 --- a/dcmnet/apps/Makefile.dep +++ b/dcmnet/apps/Makefile.dep @@ -1,291 +1,281 @@ echoscu.o: echoscu.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlstrans.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlslayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../include/dcmtk/dcmnet/diutil.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h findscu.o: findscu.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlstrans.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlslayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../include/dcmtk/dcmnet/diutil.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h movescu.o: movescu.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../ofstd/include/dcmtk/ofstd/ofstd.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dul.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../include/dcmtk/dcmnet/diutil.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ + ../../ofstd/include/dcmtk/ofstd/ofstd.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h storescp.o: storescp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../ofstd/include/dcmtk/ofstd/ofstd.h \ - ../../ofstd/include/dcmtk/ofstd/ofdatime.h \ - ../../ofstd/include/dcmtk/ofstd/ofdate.h \ - ../../ofstd/include/dcmtk/ofstd/oftime.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrmz.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ - ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/dccftsmp.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ - ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ - ../include/dcmtk/dcmnet/dcasccff.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlstrans.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlslayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../include/dcmtk/dcmnet/diutil.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ + ../../ofstd/include/dcmtk/ofstd/ofstd.h \ + ../../ofstd/include/dcmtk/ofstd/ofdatime.h \ + ../../ofstd/include/dcmtk/ofstd/ofdate.h \ + ../../ofstd/include/dcmtk/ofstd/oftime.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrmz.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ + ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/dccftsmp.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ + ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ + ../include/dcmtk/dcmnet/dcasccff.h storescu.o: storescu.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../include/dcmtk/dcmnet/diutil.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrmz.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ - ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/dccftsmp.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ - ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ - ../include/dcmtk/dcmnet/dcasccff.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlstrans.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../dcmtls/include/dcmtk/dcmtls/tlslayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../include/dcmtk/dcmnet/diutil.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrmz.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ + ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/dccftsmp.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ + ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ + ../include/dcmtk/dcmnet/dcasccff.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djutils.h \ + ../../dcmimgle/include/dcmtk/dcmimgle/diutils.h \ + ../../dcmjpeg/include/dcmtk/dcmjpeg/djencode.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcrledrg.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcrleerg.h termscu.o: termscu.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h \ - ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ - ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ - ../include/dcmtk/dcmnet/dimse.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofcmdln.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h \ + ../../ofstd/include/dcmtk/ofstd/ofconapp.h \ + ../../dcmdata/include/dcmtk/dcmdata/cmdlnarg.h \ + ../include/dcmtk/dcmnet/dimse.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdebug.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h diff --git a/dcmnet/apps/Makefile.in b/dcmnet/apps/Makefile.in index eeb4409..388097c 100644 --- a/dcmnet/apps/Makefile.in +++ b/dcmnet/apps/Makefile.in @@ -16,11 +16,17 @@ include $(configdir)/@common_makefile@ ofstddir = $(top_srcdir)/../ofstd dcmdatadir = $(top_srcdir)/../dcmdata dcmtlsdir = $(top_srcdir)/../dcmtls +dcmjpegdir = $(top_srcdir)/../dcmjpeg +dcmimgledir = $(top_srcdir)/../dcmimgle +dcmjpeglibdir = -L$(dcmjpegdir)/libsrc -L$(dcmjpegdir)/libijg8 -L$(dcmjpegdir)/libijg12 \ + -L$(dcmjpegdir)/libijg16 +dcmjpeglib = -ldcmjpeg -lijg8 -lijg12 -lijg16 -LOCALINCLUDES = -I$(ofstddir)/include -I$(dcmdatadir)/include -I$(dcmtlsdir)/include + +LOCALINCLUDES = -I$(ofstddir)/include -I$(dcmdatadir)/include -I$(dcmtlsdir)/include -I$(dcmjpegdir)/include -I$(dcmimgledir)/include LIBDIRS = -L$(top_srcdir)/libsrc -L$(ofstddir)/libsrc -L$(dcmdatadir)/libsrc \ - -L$(dcmtlsdir)/libsrc -LOCALLIBS = -ldcmnet -ldcmdata -lofstd $(ZLIBLIBS) $(TCPWRAPPERLIBS) $(JASPERLIBS) + -L$(dcmtlsdir)/libsrc $(dcmjpeglibdir) -L$(dcmimgledir)/libsrc +LOCALLIBS = -ldcmnet -ldcmdata -lofstd $(dcmjpeglib) -ldcmimgle $(ZLIBLIBS) $(TCPWRAPPERLIBS) $(JASPERLIBS) DCMTLSLIBS = -ldcmtls objs = echoscu.o storescu.o storescp.o findscu.o movescu.o termscu.o diff --git a/dcmnet/libsrc/Makefile.dep b/dcmnet/libsrc/Makefile.dep index e90dae7..70bf97c 100644 --- a/dcmnet/libsrc/Makefile.dep +++ b/dcmnet/libsrc/Makefile.dep @@ -1,725 +1,706 @@ assoc.o: assoc.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h \ - ../../ofstd/include/dcmtk/ofstd/ofstd.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../../ofstd/include/dcmtk/ofstd/ofstd.h \ + ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h cond.o: cond.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h dcasccff.o: dcasccff.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dcasccff.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/assoc.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccftsmp.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ - ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ - ../../ofstd/include/dcmtk/ofstd/ofconfig.h \ - ../../ofstd/include/dcmtk/ofstd/ofstack.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dcasccff.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcasccfg.h ../include/dcmtk/dcmnet/assoc.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccftsmp.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ + ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h \ + ../../ofstd/include/dcmtk/ofstd/ofconfig.h \ + ../../ofstd/include/dcmtk/ofstd/ofstack.h dcasccfg.o: dcasccfg.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dcasccfg.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccftsmp.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ - ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dcasccfg.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccftsmp.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h ../include/dcmtk/dcmnet/dccfrsmp.h \ + ../include/dcmtk/dcmnet/dccfenmp.h ../include/dcmtk/dcmnet/dccfprmp.h dccfenmp.o: dccfenmp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccfenmp.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccfenmp.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdefine.h dccfpcmp.o: dccfpcmp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccfpcmp.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccfpcmp.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h dccfprmp.o: dccfprmp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccfprmp.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcmsmap.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccfprmp.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcmsmap.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h dccfrsmp.o: dccfrsmp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccfrsmp.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccfpcmp.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccfrsmp.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/dccfpcmp.h dccftsmp.o: dccftsmp.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccftsmp.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccftsmp.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcmsmap.h ../include/dcmtk/dcmnet/dccfuidh.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h dccfuidh.o: dccfuidh.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dccfuidh.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dccfuidh.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h dcmlayer.o: dcmlayer.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcmtrans.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dcmlayer.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcmtrans.h dcmtrans.o: dcmtrans.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dcmtrans.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dcmtrans.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../include/dcmtk/dcmnet/dcmlayer.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h dcompat.o: dcompat.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h dimcancl.o: dimcancl.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimcmd.o: dimcmd.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h dimcmd.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ + ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ + ../include/dcmtk/dcmnet/assoc.h dimcmd.h dimdump.o: dimdump.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimecho.o: dimecho.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimfind.o: dimfind.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimget.o: dimget.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimmove.o: dimmove.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h dimse.o: dimse.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h dimcmd.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ - ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcistrmb.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrmb.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrmf.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + dimcmd.h ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdict.h \ + ../../dcmdata/include/dcmtk/dcmdata/dchashdi.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcistrmb.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcistrma.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrmb.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrmf.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrul.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrobow.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrsh.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcchrstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdicent.h dimstore.o: dimstore.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrmf.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrmf.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcostrma.h diutil.o: diutil.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ - ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ - ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dimse.h ../include/dcmtk/dcmnet/lst.h \ - ../include/dcmtk/dcmnet/dul.h ../include/dcmtk/dcmnet/extneg.h \ - ../include/dcmtk/dcmnet/assoc.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/diutil.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdatset.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcitem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcobject.h \ + ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcxfer.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctag.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctagkey.h \ + ../../dcmdata/include/dcmtk/dcmdata/dclist.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcstack.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcvrui.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcbytstr.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcelem.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcpcache.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h ../include/dcmtk/dcmnet/dimse.h \ + ../include/dcmtk/dcmnet/lst.h ../include/dcmtk/dcmnet/dul.h \ + ../include/dcmtk/dcmnet/extneg.h ../include/dcmtk/dcmnet/assoc.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcfilefo.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcsequen.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcmetinf.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcdeftag.h dul.o: dul.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ - ../../ofstd/include/dcmtk/ofstd/ofstd.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h ../include/dcmtk/dcmnet/dicom.h \ + ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h \ + ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h \ + ../../ofstd/include/dcmtk/ofstd/ofstd.h dulconst.o: dulconst.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulextra.o: dulextra.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h \ - ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h \ + ../include/dcmtk/dcmnet/dcmtrans.h ../include/dcmtk/dcmnet/dcmlayer.h dulfsm.o: dulfsm.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h \ - ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dcmtrans.h \ - ../include/dcmtk/dcmnet/dcmlayer.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h \ + ../include/dcmtk/dcmnet/assoc.h ../include/dcmtk/dcmnet/dcmtrans.h \ + ../include/dcmtk/dcmnet/dcmlayer.h dulparse.o: dulparse.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulpres.o: dulpres.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ - ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ - ../../ofstd/include/dcmtk/ofstd/ofthread.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ - ../include/dcmtk/dcmnet/dcompat.h \ - ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ - ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ - ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ - ../include/dcmtk/dcmnet/dul.h \ - ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ - ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h + ../../config/include/dcmtk/config/cfunix.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../include/dcmtk/dcmnet/dicom.h ../include/dcmtk/dcmnet/cond.h \ + ../../ofstd/include/dcmtk/ofstd/ofconsol.h \ + ../../ofstd/include/dcmtk/ofstd/ofthread.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcerror.h \ + ../include/dcmtk/dcmnet/dcompat.h \ + ../../ofstd/include/dcmtk/ofstd/ofbmanip.h \ + ../../dcmdata/include/dcmtk/dcmdata/dctypes.h \ + ../../dcmdata/include/dcmtk/dcmdata/dcuid.h \ + ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/oflist.h \ + ../include/dcmtk/dcmnet/dul.h ../../ofstd/include/dcmtk/ofstd/ofglobal.h \ + ../include/dcmtk/dcmnet/extneg.h dulstruc.h dulpriv.h dulfsm.h extneg.o: extneg.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/extneg.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h + ../../config/include/dcmtk/config/cfunix.h \ + ../include/dcmtk/dcmnet/extneg.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h lst.o: lst.cc ../../config/include/dcmtk/config/osconfig.h \ - ../../config/include/dcmtk/config/cfunix.h \ - ../include/dcmtk/dcmnet/lst.h ../../ofstd/include/dcmtk/ofstd/ofcond.h \ - ../../ofstd/include/dcmtk/ofstd/oftypes.h \ - ../../ofstd/include/dcmtk/ofstd/ofstring.h \ - ../../ofstd/include/dcmtk/ofstd/ofcast.h \ - ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ - ../../ofstd/include/dcmtk/ofstd/ofstream.h \ - ../../ofstd/include/dcmtk/ofstd/oflist.h + ../../config/include/dcmtk/config/cfunix.h ../include/dcmtk/dcmnet/lst.h \ + ../../ofstd/include/dcmtk/ofstd/ofcond.h \ + ../../ofstd/include/dcmtk/ofstd/oftypes.h \ + ../../ofstd/include/dcmtk/ofstd/ofstring.h \ + ../../ofstd/include/dcmtk/ofstd/ofcast.h \ + ../../ofstd/include/dcmtk/ofstd/ofstdinc.h \ + ../../ofstd/include/dcmtk/ofstd/ofstream.h \ + ../../ofstd/include/dcmtk/ofstd/oflist.h