Example #1
0
    public static int Main(string[] argv)
    {
        string file1 = argv[0];
        string file2 = argv[1];

        gdcm.Reader r = new gdcm.Reader();
        r.SetFileName(file1);
        if (!r.Read())
        {
            return(1);
        }

        gdcm.File    f  = r.GetFile();
        gdcm.DataSet ds = f.GetDataSet();
        // tsis = gdcm.Tag(0x0008,0x2112) # SourceImageSequence

        // Create a dataelement
        gdcm.DataElement de  = new gdcm.DataElement(new gdcm.Tag(0x0010, 0x2180));
        string           occ = "Occupation";

        de.SetByteValue(StrToByteArray(occ), new gdcm.VL((uint)occ.Length));
        de.SetVR(new gdcm.VR(gdcm.VR.VRType.SH));

        // Create an item
        gdcm.Item it = new gdcm.Item();
        it.SetVLToUndefined();  // Needed to not popup error message
        //it.InsertDataElement(de)
        gdcm.DataSet nds = it.GetNestedDataSet();
        nds.Insert(de);

        // Create a Sequence
        gdcm.SmartPtrSQ sq = gdcm.SequenceOfItems.New();
        sq.SetLengthToUndefined();
        sq.AddItem(it);

        // Insert sequence into data set
        gdcm.DataElement des = new gdcm.DataElement(new gdcm.Tag(0x0400, 0x0550));
        des.SetVR(new gdcm.VR(gdcm.VR.VRType.SQ));
        des.SetValue(sq.__ref__());
        des.SetVLToUndefined();

        ds.Insert(des);

        gdcm.Writer w = new gdcm.Writer();
        w.SetFile(f);
        w.SetFileName(file2);
        if (!w.Write())
        {
            return(1);
        }

        return(0);
    }
Example #2
0
        public string[] GetIDs()
        {
            this.gdcmReader = new gdcm.ImageReader();
            this.gdcmReader.SetFileName(this.filePath);

            if (this.gdcmReader.Read())
            {
                this.file = this.gdcmReader.GetFile();
                return new string[] { this.ReadTag(0x20, 0xD), this.ReadTag(0x20, 0xE) };
            }
            else
                return new string[] { };
        }
Example #3
0
        public bool Read()
        {
            this.gdcmReader = new gdcm.ImageReader();
            this.gdcmReader.SetFileName(this.filePath);

            if (this.gdcmReader.Read())
            {
                this.file = this.gdcmReader.GetFile();
                this.image = this.gdcmReader.GetImage();
                this.ReadToBitmap();
                this.ReadTags();

                return true;
            }
            else
                return false;
        }