Search found 29 matches

by budric
Tue, 2013-12-17, 20:43
Forum: DCMTK - General
Topic: Slow storescu/scp transfer
Replies: 7
Views: 9113

Re: Slow storescu/scp transfer

I tried it on Windows 7 and it does indeed work on the order of 10 seconds (I don't have time utility on windows). Very bizarre. Same arguments. May I ask what system you were testing on? Here's some more testing I did: I converted the dataset to be little endian explicit find . -type f -print0 | xa...
by budric
Tue, 2013-12-17, 20:11
Forum: DCMTK - General
Topic: Slow storescu/scp transfer
Replies: 7
Views: 9113

Re: Slow storescu/scp transfer

This is very strange. I'm not getting anywhere near those transfer rates. More server information: Linux Kernel: 3.11.0-14-generic bandwidth test: iperf -c localhost ------------------------------------------------------------ Client connecting to localhost, TCP port 5001 TCP window size: 648 KByte ...
by budric
Mon, 2013-12-16, 17:48
Forum: DCMTK - General
Topic: Slow storescu/scp transfer
Replies: 7
Views: 9113

Slow storescu/scp transfer

Hi, I find DICOM transfer to be very slow. I setup a simple test to measure performance: Server storescp -v --implicit --max-pdu 131072 5678 Client time storescu --scan-directories localhost 5678 0000004/ The result of time was: real 2m57.487s user 0m0.735s sys 0m0.053s The dataset size is about 120...
by budric
Wed, 2013-05-08, 15:12
Forum: DCMTK - General
Topic: DataVRDictionary; Should EVR_DS extended length = 1?
Replies: 2
Views: 4206

Re: DataVRDictionary; Should EVR_DS extended length = 1?

Thanks for the clarification.
by budric
Tue, 2013-05-07, 18:28
Forum: DCMTK - General
Topic: DataVRDictionary; Should EVR_DS extended length = 1?
Replies: 2
Views: 4206

DataVRDictionary; Should EVR_DS extended length = 1?

Hi, I'm using post 3.6.0 trunk version bf1a1e13d24678c05d599cc16b942f83b02342c8. I was trying to save a StrutureSet to a file with write(dcmStrm, EXS_LittleEndianExplicit, EET_ExplicitLength, NULL); It fails with E: DcmObject: Length of element ContourData (3006,0050) exceeds maximum of 16-bit lengt...
by budric
Wed, 2013-01-02, 17:53
Forum: DCMTK - General
Topic: findscu.exe should return 1 on association failed
Replies: 0
Views: 13940

findscu.exe should return 1 on association failed

Hi, I've checked out latest git branch. If I run findscu and it can't connect to the PACS, the process exits with status 0. I'd like it to exit with 1 indicating there was an error. I would like to submit a simple patch (I hope the diff format is correct, I'm not that good with git): diff --git dcmn...
by budric
Wed, 2011-06-22, 19:14
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

Thanks. Looking at the dates: 1999 in pdf, and 99, 02 timestamps on the FTP . I'm not holding my breath =).

But at least it confirms our correct understanding. Thanks again for finding those bits in the standard.
by budric
Wed, 2011-06-15, 21:46
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

Hi, thanks for that quote. Put things into new light. I've been playing around with the following patch to dcitem.cc else if ((tag.getGroup() & 0xFF00) == 0x5000 && tag.getElement() == 0x3000 && (tag.getEVR() == EVR_ox)) { /* case 4 (CurveData): see section A.1 in PS 3.5-2004 DCM...
by budric
Tue, 2011-06-14, 18:57
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

This is C.10.2 Curve module. Page 688, Part 3: ftp://medical.nema.org/medical/dicom/2004/03v04dif/03v04_03_2.pdf The Data Representation Tag is (50xx,0103), it's enumerated type. The Curve Data tag is (50xx,3000) - that's the binary array. FYI, it took me a while to figure out what 50xx actually mea...
by budric
Tue, 2011-06-14, 16:58
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

Sort of. The data is an array of Float32 or Uint16 etc, so I'd use DcmItem::findAndGetFloat32Array(). The implementation in DCMTK is: OFCondition DcmItem::findAndGetFloat32Array(const DcmTagKey& tagKey, const Float32 *&value, unsigned long *count, const OFBool searchIntoSub) { DcmElement *el...
by budric
Fri, 2011-06-10, 16:39
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

In my case tag1 is binary data, tag2 is integer telling you data type of the binary data: 0 = unsigned short (US) => swap 2 bytes potentially 2 = floating point single (FL) => swap 4 bytes potentially 3 = floating point double (FD) => swap 8 bytes potentially However DCMTK will just look up the VR f...
by budric
Wed, 2011-06-08, 21:08
Forum: DCMTK - General
Topic: Question about getUint8Array() implementation and VRs in general
Replies: 14
Views: 16333

Question about getUint8Array() implementation and VRs in general

Hi, I need to extract a list of binary numbers from a tag that's deprecated in the standard. I'm encountering strange behavior that I was hoping someone can clarify. Here's a code snippet: //note I'm not freeing the pointers here because they point to internal DCMTK structures DcmElement * rawElemen...
by budric
Wed, 2011-03-30, 16:32
Forum: DCMTK - General
Topic: Multi threaded file load crashes due to logging
Replies: 10
Views: 12995

Thanks for looking at the problem. I'm compiling under MSVC. For now I'll just disable the logs.
by budric
Fri, 2011-03-18, 17:42
Forum: DCMTK - General
Topic: Multi threaded file load crashes due to logging
Replies: 10
Views: 12995

Hi, Your example works. However the following doesn't. #include "dcmtk/dcmdata/dctypes.h" class LogThread : public OFThread { public: LogThread(int i) : num_(i) {} private: void run() { for (int i = 0; i < 5; i++) { DCMDATA_DEBUG("Thread " << num_ << " doing loop " << i...
by budric
Fri, 2011-03-18, 15:44
Forum: DCMTK - General
Topic: Multi threaded file load crashes due to logging
Replies: 10
Views: 12995

Thanks for your test. I do not have explicit OFLog::configure(); code. The first call to DCMTK library is DcmFileFormat::loadFile() from various threads which then crashes. So maybe the logger is not configured properly. As I mentioned for some reason the value member variable inside Logger is null,...