#ifndef SDCMFINDSCUDATACALLBACK_H #define SDCMFINDSCUDATACALLBACK_H #include "dcmtk/dcmnet/dfindscu.h" #include "dcmtk/oflog/oflog.h" #include "SDCMCommonStructure.h" #include #include using namespace std; class SDCMFindSCUDataCallback : public DcmFindSCUCallback { public: //SDCMFindSCUDataCallback(); SDCMFindSCUDataCallback( DcmFindSCUExtractMode extractResponses, int cancelAfterNResponses, const char *outputDirectory = NULL, STD_NAMESPACE ofstream *outputStream = NULL, const unsigned int limitOutput = 0); /// destructor virtual ~SDCMFindSCUDataCallback(); virtual void callback( T_DIMSE_C_FindRQ *request, int& responseCount, T_DIMSE_C_FindRSP *rsp, DcmDataset *responseIdentifiers); void AddView(WORD wGroup, WORD wElement); int GetWorklistSize(); void Clear(); void ReadSequence(DcmElement* pElement, WorklistResponseData* wr); //CSList* GetWorklistData(); //vector* GetWorklistData(); vector* GetDCMDumpList(); void SetWorklistData(vector* pWorklistData); void SetWorklistDump(vector* pDCMDump); int CharacterSetConversion(DcmItem* pDcmItem, OFString strEnc); int ConvertPatientName(DcmElement* pElement, OFString strConv); OFString FindCharacterSet(DcmItem* pDcmItem); protected: vector* m_pViewReservedList; vector* m_pDCMViewList; vector* m_pDCMDumpList; OFLogger* m_pLogger; }; #endif // SDCMFINDSCUDATACALLBACK_H