Main Page
From malat
TODO:
- http://cvs.sourceforge.net/viewcvs.py/xmlio
- http://groups.google.com/group/alt.test/msg/d4d1f56129c2f19d
- http://dicom.offis.de/download/mesa_cpi/release_2004/
Links:
- http://www.macforge.net/projects.php?cat=266
- http://www.nbrains.net/php/pukiwiki/index.php?link%BD%B8%2FDICOM
Get MAC Address:
- http://groups.google.com/group/microsoft.public.win32.programmer.kernel/msg/b89393401932389f
- http://www.ndis.com/faq/QA01030302.htm
DICOM Server
HL7
[HL7 XML Editor]
XML stuff / IODS / Modules
Try to produce a dcmiod.xml compatible file
DICOM images
- Andreas Knopke send me a couples of images hard to deal with.
DICOM files
$ cat /tmp/source.media | sort | uniq (0002,0002) UI =CTImageStorage # 26, 1 MediaStorageSOPClassUID (0002,0002) UI =ComputedRadiographyImageStorage # 26, 1 MediaStorageSOPClassUID (0002,0002) UI =DRAFT_SRDetailStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI =GrayscaleSoftcopyPresentationStateStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI =MRImageStorage # 26, 1 MediaStorageSOPClassUID (0002,0002) UI =MediaStorageDirectoryStorage # 20, 1 MediaStorageSOPClassUID (0002,0002) UI =NuclearMedicineImageStorage # 26, 1 MediaStorageSOPClassUID (0002,0002) UI =SecondaryCaptureImageStorage # 26, 1 MediaStorageSOPClassUID (0002,0002) UI =UltrasoundImageStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI =UltrasoundMultiframeImageStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI =XRayAngiographicImageStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI =XRayFluoroscopyImageStorage # 28, 1 MediaStorageSOPClassUID (0002,0002) UI [1.2.840.113619.4.26] # 20, 1 MediaStorageSOPClassUID
DICOM Standard
I should be able to generate a PS 3.6 from PS 3.3 and thus by comparing to PS 3.6 find out if all RET elements are indeed RET.
Side note: Pixel Spacing Calibration Description (0029,0404) was resolved:
- ftp://medical.nema.org/medical/dicom/final/cp761_ft.pdf
- See also: http://www.dclunie.com/dicom-status/status.html
conformance statement
- "Private Creator" DICOM 2001 2005 site:www.medical.philips.com filetype:pdf
Issue
Explicit-VR transfer syntax limits the value multiplicity of DICOM data elements with decimal string (DS) value representation
Validation
[Design and Implementation of a validating XML parser in Haskell: Master's thesis; University of Applied Sciences Wedel ]
- http://www.fh-wedel.de/~si/HXmlToolbox/thesis/c1850.html
- http://www.oasis-open.org/committees/xml-conformance/suite-v1se/xmlconf-20010315.htm
PVRG nightmare
- http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/75fdfccc65a6243
- http://www.panix.com/~eli/jpeg/#examples
- ftp://figment.csee.usf.edu/pub/DDSM/cases/normals/normal_01/case0002/
- http://marathon.csee.usf.edu/Mammography/software/heathusf_v1.1.0.html
- http://marathon.csee.usf.edu/Mammography/Database.html
- http://www.dclunie.com/jpegge/stanford.pvrg.jpeg.ge.patch.19990405
MediaWiki
Installation
Installation on sourceforge was done, thanks to:
- http://jglade.sourceforge.net/wiki/index.php/Mediawiki_installation_on_SourceForge
- http://baoilleach.blogspot.com/2007/06/installing-mediawiki-on-sourceforge.html
- http://monda.hu/blog/2006/03/03/mediawiki-on-sourceforge-the-howto/
- http://wiki.freegamedev.net/index.php/Using_MediaWiki_on_SourceForge.net
Other refs (not tested yet):
- http://meta.wikimedia.org/wiki/Talk:Running_MediaWiki_on_Sourceforge.net
- http://monda.hu/blog/2006/03/03/mediawiki-on-sourceforge-the-howto/
- http://baoilleach.blogspot.com/2007/06/installing-mediawiki-on-sourceforge.html
Official ref:
- http://www.mediawiki.org/wiki/Manual_talk:Running_MediaWiki_on_Sourceforge.net
- http://www.mediawiki.org/wiki/Help:Configuration_settings
TODO:
Backup
- http://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki
- http://www.mediawiki.org/wiki/Manual_talk:Backing_up_a_wiki
Configuration
Edit file /home/groups/g/gd/gdcm/htdocs/wiki/LocalSettings.php
Help
Bug
- http://www.mediawiki.org/wiki/Manual:Running_MediaWiki_on_Sourceforge.net
- https://phpmyadmin-g.sourceforge.net/
Subversion
- http://www.sipfoundry.org/tools/svn-tips.html#line-ends
- http://www.zope.org/DevHome/Subversion/SubversionConfigurationForLineEndings
- http://www.apache.org/dev/svn-eol-style.txt
TODO:
config
$ cat ~/.subversion/config
interactive-conflicts = no enable-auto-props = yes [auto-props] *.i = svn:mime-type=text/plain;svn:eol-style=native *.in = svn:mime-type=text/plain;svn:eol-style=native *.tpl = svn:mime-type=text/plain;svn:eol-style=native *.dic = svn:mime-type=text/plain;svn:eol-style=native *.xml = svn:mime-type=text/xml;svn:eol-style=native *.dcm = svn:mime-type=application/dicom *.ima = svn:mime-type=application/dicom *.acr = svn:mime-type=application/dicom *.pdf = svn:mime-type=application/octet-stream *.xsd = svn:mime-type=text/xml;svn:eol-style=native *.xsl = svn:mime-type=text/xml;svn:eol-style=native *.html = svn:mime-type=text/html;svn:eol-style=native *.txt = svn:mime-type=text/plain;svn:eol-style=native *.cmake = svn:mime-type=text/plain;svn:eol-style=native *.jpeg = svn:mime-type=image/jpeg *.png = svn:mime-type=image/png *.doc = svn:mime-type=application/msword *.dsp = svn:mime-type=text/plain;svn:eol-style=CRLF *.dsw = svn:mime-type=text/plain;svn:eol-style=CRLF *.c = svn:mime-type=text/plain;svn:eol-style=native *.cpp = svn:mime-type=text/plain;svn:eol-style=native *.hpp = svn:mime-type=text/plain;svn:eol-style=native *.cxx = svn:mime-type=text/plain;svn:eol-style=native *.txx = svn:mime-type=text/plain;svn:eol-style=native *.h = svn:mime-type=text/plain;svn:eol-style=native *.sh = svn:mime-type=text/plain;svn:eol-style=native *.py = svn:mime-type=text/plain;svn:eol-style=native *.cs = svn:mime-type=text/plain;svn:eol-style=native *.man = svn:mime-type=text/plain;svn:eol-style=native *.config = svn:mime-type=text/plain;svn:eol-style=native .NoDartCoverage = svn:mime-type=text/plain;svn:eol-style=native *.jpg = svn:mime-type=image/jpeg *.bmp = svn:mime-type=image/bmp Makefile = svn:mime-type=text/plain;svn:eol-style=native TODO = svn:mime-type=text/plain;svn:eol-style=native README = svn:mime-type=text/plain;svn:eol-style=native # debian files: *.install = svn:mime-type=text/plain;svn:eol-style=native *.patch = svn:mime-type=text/plain;svn:eol-style=native *.docs = svn:mime-type=text/plain;svn:eol-style=native *.Debian = svn:mime-type=text/plain;svn:eol-style=native rules = svn:mime-type=text/plain;svn:eol-style=native changelog = svn:mime-type=text/plain;svn:eol-style=native compat = svn:mime-type=text/plain;svn:eol-style=native control = svn:mime-type=text/plain;svn:eol-style=native watch = svn:mime-type=text/plain;svn:eol-style=native COPYING = svn:mime-type=text/plain;svn:eol-style=native get-orig-source = svn:mime-type=text/plain;svn:eol-style=native copyright = svn:mime-type=text/plain;svn:eol-style=native series = svn:mime-type=text/plain;svn:eol-style=native
diffing to a date
$ svn di -r {2008-01-01} > /tmp/diff.patch
merging / branch
- http://svnbook.red-bean.com/nightly/en/svn.branchmerge.basicmerging.html
- http://svnbook.red-bean.com/en/1.1/ch04s04.html#svn-ch-4-sect-4.1
Doing a merge with svn 1.4.2 is slightly more painful:
$ cd branches/gdcm-2-0 $ svn log --verbose --stop-on-copy https://gdcm.svn.sourceforge.net/svnroot/gdcm/branches/gdcm-2-0 $ svn merge --accept=postpone -r 2604:2609 https://gdcm.svn.sourceforge.net/svnroot/gdcm/trunk $ svn ci -m"ENH: merging back 2604:2609 changes"
Create a new gdcm tag
$ svn copy https://gdcm.svn.sourceforge.net/svnroot/gdcm/branches/gdcm-2-0 https://gdcm.svn.sourceforge.net/svnroot/gdcm/tags/gdcm-2-0-8 -m"ENH: Tagging the gdcm 2.0.8 release"
Ref:
Design Pattern
Serialization and Unserialization
after a post:
iocharset
//path/to/remote/ /mnt/smb cifs noauto,user,users,username=mmalaterre,uid=1002,gui=1002,iocharset=iso8859-1,codepage=850 0 0
smbfs would not work, neither would cifs+utf8 :(
debian
- http://www.debian.org/doc/manuals/reference/ch-package.en.html
- http://www.debian.org/doc/maint-guide/ch-build.en.html
- http://www.debian.org/doc/debian-policy/
- http://www.eyrie.org/~eagle/notes/debian/build-tools.html#upstream
- https://help.ubuntu.com/6.06/ubuntu/packagingguide/C/basic-debhelper.html
- http://www.zoxx.net/notes/index.php/2006/08/09/22-create-a-debian-package-with-dh_make-and-dpkg-buildpackage (dch example)
- [Debian Community Guideline http://people.debian.org/~enrico/dcg/]
debian-med
- http://debian-med.alioth.debian.org/tasks/imaging.php
- http://workaround.org/moin/SvnBuildpackage
- http://debianpaket.de/svn-buildpackage/ch-reference.html
- https://trac.cyconet.org/debian/wiki/SvnBuildPackage
- http://kb.iu.edu/data/aeww.html (ssh-add)
TODO
debian-med tech
this is needed in new svn dir (when propset is not set)
$ export DEB_BUILD_OPTIONS=parallel=4 $ svn propset mergeWithUpstream 1 debian
$ echo "origDir=.." >> .svn/deb-layout && uscan --force-download
Otherwise you need to use get-orig-source:
$ ./debian/rules get-orig-source
Make sure it output in ../tarballs
$ svn-buildpackage --svn-override=origDir=.. --svn-ignore-new -rfakeroot -us -uc
upload
References:
- http://www.debian.org/doc/packaging-manuals/developers-reference/
- http://www.debian.org/doc/manuals/maint-guide/
- http://www.debian.org/doc/packaging-manuals/python-policy/
- http://pkg-mono.alioth.debian.org/cli-policy/
- http://java.debian.net/
- http://webapps-common.alioth.debian.org/draft-php/html/ch-php-libs.html
- http://pbuilder.alioth.debian.org/
$ cd debian-med/trunk/packages/gdcm/trunk $ svn-buildpackage --svn-tag-only --svn-noautodch $ svn-buildpackage --svn-override=origDir=.. --svn-ignore-new -rfakeroot -k0EA23F2B $ cd ../build-area $ dupload gdcm_2.0.10-2_amd64.changes
I could not get svn-buildpackage to recognize the env var:
$ cat ~/.devscripts DEBSIGN_KEYID=0EA23F2B
maybe because of [1]
Another way is to:
tar -xzf *.orig.tar.gz cd <source-directory> cp -a <svn-pkg-dir>/trunk/debian . rm -rf `find . -type d -name .svn` pdebuild --auto-debsign --debsign-k 0EA23F2B
CMake
TODO, reproduce the packaging of VTK for GDCM:
CMake / Install framework
- http://www.cmake.org/Wiki/CMake:Install_Commands
- http://www.vtk.org/Wiki/VTK/New_Install_Framework
- http://www.cmake.org/HTML/cmake-2.6.html#command:install
- http://www.cmake.org/Bug/view.php?id=6813
- http://www.cmake.org/pipermail/cmake/2008-January/019327.html
- http://www.cmake.org/pipermail/cmake/2007-July/015435.html
- http://www.cmake.org/pipermail/cmake/2007-July/015310.html
- http://www.cmake.org/pipermail/cmake/2007-July/015238.html
- http://www.cmake.org/pipermail/cmake/2008-January/019327.html
- http://www.cmake.org/pipermail/cmake/2007-August/015655.html
- http://www.cmake.org/pipermail/cmake/2007-August/015686.html
- http://www.cmake.org/pipermail/cmake/2006-October/011362.html
c++ / socket-stream
- http://groups.yahoo.com/group/boost/files/socketbuf.zip
- http://www.boost.org/doc/libs/1_39_0/doc/html/boost_asio/overview/networking/iostreams.html
- http://www.ddj.com/mobile/184401470?pgno=10
- http://www.flipcode.com/archives/Socket_Classes.shtml
- http://www.linuxhacker.at/socketxx/
- http://members.aon.at/hstraub/linux/socket++/
- http://socketstream.sourceforge.net/
- http://www.fs.tum.de/~richtesi/software/libsocket++/
- http://giallo.sourceforge.net/
C++ DbC / Design by Contract
- http://www.boost.org/doc/libs/1_37_0/libs/multi_index/doc/tutorial/debug.html
- http://www.codeproject.com/KB/cpp/DesignByContract.aspx
- http://groups.google.com/group/comp.lang.c++/msg/eee4a41ffaf6ac1a?hl=en
- http://www.gamedev.net/community/forums/topic.asp?topic_id=518529&whichpage=2�
- http://www.eventhelix.com/RealtimeMantra/Object_Oriented/design_by_contract.htm
- http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/986aad8e152884e0/23bee235c3331ea1?hl=en&lnk=gst&q=contract#23bee235c3331ea1
- http://msdn.microsoft.com/en-us/library/d3bbz7tz(VS.80).aspx
C++ and templates
- http://osl.iu.edu/~tveldhui/papers/Template-Metaprograms/meta-art.html
- http://www.cantrip.org/traits.html
- http://www.cplusplus.com/ref/iostream/
- http://developers.sun.com/prodtech/cc/articles/CC_perf/content.html
[Automatic, Template-Based Run-Time Specialization: Implementation and Experimental Study]
Groups:
- http://groups.google.com/group/comp.lang.c++/msg/687e8d67163babdc
- http://groups.google.com/group/comp.lang.c++/msg/9c81473a4d7d2dc9
- http://groups.google.com/group/comp.lang.c++.moderated/msg/76497df0d6b25244
A fun thread:
Fixes for Library Bugs in VC++ V5.0/V6.0
virtual template member function
- http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/d5facd7221840c1
- http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/eb82a7a1294ada2f
- http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/6f03bb0221ca3c91
- http://groups.google.com/group/comp.lang.c++.moderated/msg/234cca2ae7761bd6
vim
gpg
C++
Portable and exact bi-directional float to shortest string conversion
- http://lwn.net/Articles/252125/ Memory part 2: CPU caches
Forward declaration of ostream and string:
Error and Exception Handling
Exception Handling
Unchaining Chained Exceptions in C++
Portability Hints: Microsoft Visual C++ 6.0 SP4
Portability Hints: Borland C++ 5.5.1
Mudflap Pointer Debugging
Correct C++ tutorial
C++ FAQ:
A Regular Expression Tokenizer using the YARD Parser
virtual function template - design problem (aka vistor pattern):
parallel libstdc++
C++ I/O Stack Library
How do compilers use "over-allocation" to remember the number of elements in an allocated array?
POD Types
Destructors FAQ
C
GetModuleFileName
- http://www.unix.com/high-level-programming/24337-find-fully-qualified-path-app-my-module-running.html
- http://groups.google.com/group/gnu.utils.bug/browse_thread/thread/49190417824f214
- http://groups.google.com/group/comp.os.linux.development.apps/browse_thread/thread/245de1000ad46717
- http://groups.google.com/group/comp.os.linux.development.apps/browse_thread/thread/c4df50defd89d796
- http://blogs.sun.com/ejannett/entry/relocatable_command_lines
A more complex implementation can be found in VTK/CMake/ITK:
- http://public.kitware.com/cgi-bin/viewcvs.cgi/Source/kwsys/SharedForward.h.in?root=CMake&view=markup
It also implement the solution of parsing argv[0] to extract the full path
XML
DTD vs XSD
Binary XML
XML 2 C++
XSD
- http://www.brics.dk/~amoeller/XML/schemas/xmlschema-annotations.html
- http://www.w3schools.com/Schema/schema_howto.asp
- http://www.stylusstudio.com/whitepapers/powerschemas_with_stylus.pdf
python
python/qt
graph
starttls + openssl:
- http://qmail.jms1.net/test-auth.shtml
- http://www.sendmail.org/~ca/email/starttls.html
- http://www.ustrem.org/en/articles/send-mail-using-phpmailer-en/
Shell
bash
tr
How to filter out the \0 character:
$ cat input.xml | tr -d "\000" > bla.xml
find
$ find /usr -type d -exec find {} -maxdepth 1 -type f -print -quit \;
$ find -type f | grep -v .svn | xargs sed -i -e 's/ Copyright (c) 2006 Mathieu Malaterre/ Copyright (c) 2006-2007 Mathieu Malaterre/g'
Remove any line containing the word 'FOOBAR'
$ find -type f -name \*.xml -exec sed -i -e '/FOOBAR/d'
screen
XML/XSL
Comparing two XML file:
XML / C++
Sourceforge
things I always forgot
$ rsync -avh master.dl.sourceforge.net::sourceforge/g/gd/gdcm/
Direct link (before mirror syncing):
To create a virtual package, you need to upload/delete/re-upload the file and associate it. Directories are not allowed, instead use a tarball.
My upload:
releaseforge
Maybe the most important package of all :
system info
General Configuration: The project web server is running an updated version of the Fedora Core 2 distribution of Linux.
% /lib/libc.so.6
GNU C Library stable release version 2.3.4, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.4.6 20060404 (Red Hat 3.4.6-3).
Compiled on a Linux 2.4.20 system on 2006-08-12.
Available extensions:
GNU libio by Per Bothner
crypt add-on version 2.1 by Michael Glad and others
linuxthreads-0.10 by Xavier Leroy
The C stubs add-on version 2.1.2.
BIND-8.2.3-T5B
NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Glibc-2.0 compatibility add-on by Cristian Gafton
GNU Libidn by Simon Josefsson
libthread_db work sponsored by Alpha Processor Inc
Thread-local storage support included.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
% uname -a Linux pr-shellC.sourceforge.net 2.6.9-42.0.10.ELsmp #1 SMP Tue Feb 27 10:11:19 EST 2007 i686 athlon i386 GNU/Linux
% cat /proc/cpuinfo processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 33 model name : Dual Core AMD Opteron(tm) Processor 275 stepping : 2 cpu MHz : 0.000 cache size : 1024 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow pni bogomips : 1404.92 processor : 1 vendor_id : AuthenticAMD cpu family : 15 model : 33 model name : Dual Core AMD Opteron(tm) Processor 275 stepping : 2 cpu MHz : 0.000 cache size : 1024 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow pni bogomips : 2162.68
mysql
rsync
rsync osdn.dl.sourceforge.net::sourceforge/g/gd/gdcm/ rsync -vt osdn.dl.sourceforge.net::sourceforge/g/gd/gdcm/gdcm-1.2.1.tgz . wget ftp://ftp1.sf.net/pub/sourceforge/g/gd/gdcm/gdcm-1.2.1.tgz wget --passive-ftp ftp://ftp1.sf.net/pub/sourceforge/g/gd/gdcm/gdcm-1.2.1.tgz
CVS
Recent problem when switching CVS:
cd wxVTK find -name Root | grep '/CVS/Root$' | xargs sed -i -e 's/@cvs/@wxvtk.cvs/'
Bug of SVN on SF.net
I kept on getting:
$ svn ci -m"ENH: update" gdcm2pdf.xsl Adding gdcm2pdf.xsl svn: Commit failed (details follow): svn: COPY of gdcm2pdf.xsl: 403 Forbidden (https://svn.sourceforge.net)
So I followed:
and ran the following command:
$ svn switch --relocate https://svn.sourceforge.net/svnroot/gdcm https://gdcm.svn.sourceforge.net/svnroot/gdcm
Bug #2 of SVN on SF.net
Reported:
subversion / hooks
- http://sourceforge.net/docman/display_doc.php?docid=31070&group_id=1#scripts
- http://subversion.tigris.org/tools_contrib.html#check_case_insensitive_py
- http://www.cs.put.poznan.pl/csobaniec/Papers/svn-refcard.pdf
upload newest doxygen
$ scp Utilities/doxygen/gdcm-2.1.0-doc.tgz shell.sf.net:/home/groups/g/gd/gdcm/htdocs
$ ssh shell.sf.net "cd /home/groups/g/gd/gdcm/htdocs && tar xvfz gdcm-2.1.0-doc.tgz"
Using C for Linux kernel
[A Simple 4 Step Approach To Have Google Crawl Your Site Today Guaranteed!]
dicompedia
nrg file
Mounting a CDROM.nrg file:
nrg2iso CDROM.nrg CDROM.iso mkdir /tmp/iso sudo mount CDROM.iso /tmp/iso -t iso9660 -o loop
Wrapping
Note: need to check out Boost.Python
See also User:Mathieu/Notes See also User:Mathieu/TODO
