Cedara iReadmammo (now Merge Mammo) is a DICOM viewer geared towards mammography reading. By default, the data source you use for reading is the local machine, but you can add others — and you can set up various DICOM nodes so it can transfer images between various studies. One big issue is that it is not promiscuous for transfers, so if the other machine doesn’t know about you, you can’t transfer. Actually, since the Query/Retrieve tool allows both a source and destination different than the local machine, you can use iReadmammo for transfer between two other machines.. As long as all three of them know each other.
This script attempts to make life a little easier when first setting up the machine, by parsing two YAML config files (one for DB source, one for DICOM nodes) and adding them automatically. As an added bonus, there is the option of adding the new machine to remote hosts and scheduling a task to run at midnight to stop and restart the scriptservice (so the software reads the config again).
It requires the files ‘ireadmammo_hosts.yml’ (for Datasources) and ‘DCconfig.yml’ (for DICOM nodes), and if they don’t exist in the same directory as the script, it’ll offer to create them for you and allow you to configure them.
Error-checking is a little spotty, as I really wanted to finish the script at this point. It’s the biggest thing I’ve written in several years.
Posts Tagged ‘ruby’
iReadmammo : easy DB source / DICOM node config
Sunday, January 4th, 2009Ruby HL7
Wednesday, December 17th, 2008And right on schedule on this blog, behind
Ruby DICOM, here comes
Ruby-HL7!
Gots to love the Ruby. A lot of potential.. And to think they’re revamping the language.
Ruby DICOM
Tuesday, December 16th, 2008How to delete all files older than a day recursively in a directory and its subdirectories
Tuesday, November 4th, 2008Whoo! I haven’t done a post that long in a while! Also makes me think I should get a wordpress plugin for some ‘code’ tags..
I put ‘activerecord’ in there to take advantage of the ‘24.hours.ago’ notation, which makes life much easier. The cost is a little less than 2 seconds to load the library, so I think it’s worth it. It runs as a daily job before backup to tape, to clear old backups from the directory tree.
require 'activerecord'
def delete_recursively(in_here)
Dir.chdir(in_here)
Dir.glob('*') do |filename|
if File.directory?(filename)
delete_recursively(filename)
else
if File.mtime(filename) > 24.hours.ago
File.delete(filename)
end
end
end
Dir.chdir('..')
end
delete_recursively("your/path/here")







