Skip to content

Latest commit

 

History

History
33 lines (27 loc) · 2.13 KB

README.md

File metadata and controls

33 lines (27 loc) · 2.13 KB

dicom-protos

Build Status Go Report Card GoDoc Reference

This repository contains generated protocol buffer representations of every DICOM attribute and module. These protocol buffers were generated using the software included in this repository and the innolitics JSON dump of the entire DICOM standard.

Check out our Golang DICOM parser repo as well, if you're interested in medical imaging.

Quick Start

Generate protocol buffers

Native

Assuming you have golang and make installed:

  1. Clone this repository using git clone --recursive into your $GOPATH or go get github.com/gradienthealth/dicom-protos
  2. Simply run make run and the protos will be deposited in the protos directory.

Docker

If you use docker you can simply do the following to regenerate the protocol buffers:

  1. Clone this repository using git clone --recursive
  2. 👀Optional: Update the dicom-standard submodule if there are new JSON definitions to pull
  3. Build the container docker build . -t gradienthealth/dicom-protos
  4. Run the command below, replacing $PWD/OUTPUT_PROTOS with the path on your local machine you would like the generated protos to be deposited in.
    docker run -v $PWD/OUTPUT_PROTOS:/go/src/github.com/gradienthealth/dicom-protos/protos -it gradienthealth/dicom-protos make run

Code generation

You can generate native representations of these DICOM protocol buffers in the language of your choice.

For example to generate golang representations of these data structures, you can simply run:

protoc --proto_path=. --go_out=:$GOPATH/src *.proto