Release 3.1.1 (Public Release - 1996.09.27) - Added preliminary support for the Win32 environment (WINSOCK library). Replaced the mscw31.h config include with cfwin32.h. The dcmnet library now uses appropriate WINSOCK socket calls (send instead of write, recv instead of read, closesocket instead of close). Added: config/include/cfwin32.h Removed: config/include/mscw31.h Affects: config/include/osconfig.h dcmnet/libsrc/dul.cc dcmnet/libsrc/dulfsm.cc dcmnet/include/dcompat.h dcmnet/apps/*.cc - Preliminary support for IBM AIX systems using the IBM C Set++ compiler. It is necessary to indicate that some system include files have C linkage. Moved the BEGIN_EXTERN_C and END_EXTERN_C defines from dcmnet/include/dcmnet.h to config/include/osconfig.h so that they are always available. Some of the most affected files have been modified to use BEGIN_EXTERN_C/END_EXTERN_C but many more need changing. Affects: config/configure.in config/include/osconfig.h dcmnet/include/dcompat.h imagectn/libsrc/dbindex.cc imagectn/libsrc/dbstore.cc imagectn/libsrc/dbutils.cc imagectn/apps/imagectn.cc imagectn/apps/scemove.cc imagectn/apps/scestore.cc imagectn/apps/ti.cc imagectn/apps/tinet.cc imagectn/apps/tiui.cc dcmnet/apps/findscu.cc dcmnet/apps/storescu.cc - Preliminary support for IBM AIX systems using the IBM C Set++ compiler. Corrected various small syntax errors and warnings not noticed by other compilers (e.g. mismatch between method definition in .h and .cc files, used before set warnings, const to non-const assignment). Changed flock_t to struct flock. Renamed the support program wlistctn/wwwapps/preplock.c to preplock.cc to avoid a compiler crash. Affects: dcmdata/libsrc/dcdicdir.cc dcmdata/libsrc/dcdirrec.cc dcmnet/libsrc/assoc.cc dcmnet/libsrc/dcompat.cc wlistctn/libsrc/wrklstdb.cc Removed: wlistctn/wwwapps/preplock.c Added: wlistctn/wwwapps/preplock.cc - Added a pre-generated version of a builtin data dictionary. This file can be included in a library instead of dcdictbi.cc and was generated via the mkdictbi program (in dcmdata/libsrc). Currently a builtin data dictionary is not used per default. It has been found useful for systems which do not support environment variables making it more difficult to find a data dictionary to load (e.g. Macintosh). Added: dcmdata/libsrc/dcdictzz.cc - Removed the versions of cmdlnarg.cc and cmdlnarg.h found in dcmdata/apps and dcmnet/apps and added one single version to dcmdata/include and dcmdata/libsrc (now part of the dcmdata library). Removed: dcmdata/apps/cmdlnarg.h dcmdata/apps/cmdlnarg.cc dcmnet/apps/cmdlnarg.h dcmnet/apps/cmdlnarg.cc Added: dcmdata/include/cmdlnarg.h dcmdata/libsrc/cmdlnarg.cc Affects: dcmdata/apps/Makefile.in dcmnet/apps/Makefile.in dcmdata/libsrc/Makefile.in - Added preliminary support for the Macintosh environment (GUSI library). Affects: dcmdata/libsrc/mkdeftag.cc dcmdata/libsrc/mkdictbi.cc dcmdata/apps/*.cc dcmnet/include/dcompat.h dcmnet/libsrc/dul.cc dcmnet/libsrc/dulfsm.cc dcmnet/apps/*.cc config/include/cfmwerks.h config/configure.in - Added a separate table of Storage SOP Class UIDs (useful during association negotiation). Affects: dcmdata/libsrc/dcuid.cc dcmdata/include/dcuid.h dcmnet/apps/storescu.cc dcmnet/apps/storescp.cc imagectn/apps/imagectn.cc imagectn/apps/imagectn.h imagectn/apps/scemove.cc - Added SOP Class UIDs for Radiotherapy Objects. Affects: dcmdata/libsrc/dcuid.cc dcmdata/include/dcuid.h dcmnet/libsrc/diutil.cc - Added data dictionary tags for Radiotherapy Objects. Affects: dcmdata/libsrc/dicom.dic dcmdata/include/dcdeftag.h - Corrected erroneous setting of an error flag when inserting an attribute into an Item (via Item::insert(...)) and the attribute was already present. Now the error flag is only set if replaceOld is FALSE and an attribute already exists. Affects: dcmdata/libsrc/dcitem.cc - Eliminated lingering reference to a G++ lib_error_handler. The dcmdata library should now be independent of libg++. Affects: dcmdata/libsrc/dcentset.cc - Added optional code to the dcmdump program to restrict its output to specified named tags. Based on a suggestion from Larry V. Streepy, Jr. (mailto:streepy@healthcare.com). Affects: dcmdata/apps/dcmdump.cc dcmdata/docs/dcmdump.txt - Added capability to search data dictionary by tag name. The source code for these changes was contributed by Larry V. Streepy, Jr., Chief Technical Officer, Healthcare Communications, Inc., (mailto:streepy@healthcare.com). Affects: dcmdata/include/dcdicent.h dcmdata/include/dcdict.h dcmdata/include/dcentbst.h dcmdata/include/dcentdef.h dcmdata/libsrc/dcdict.cc dcmdata/libsrc/dcentbst.cc - Removed code which generated an error if DcmFileStream::Tell(void) was called when the stream was in write mode. This behaviour was causing DcmDicomDir::write(...) to always fail. In particular, this error was causing the program mknldir to write a DICOMDIR file containing only a meta-header. Affects: dcmdata/libsrc/dcstream.cc - Corrected missing () when calling function stack.card() used in nextObject(...). GNU C++ did not detect this error, it was discovered when compiling under MetroWerks C++ on a Power Mac. Affects: dcmdata/libsrc/dcitem.cc dcmdata/libsrc/dcsequen.cc