# SimplePrintPatientName.cs

    /*=========================================================================

      Program: GDCM (Grassroots DICOM). A DICOM library
      Module:  $URL$

      Copyright (c) 2006-2010 Mathieu Malaterre
      All rights reserved.
      See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.

         This software is distributed WITHOUT ANY WARRANTY; without even
         the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
         PURPOSE.  See the above copyright notice for more information.

    =========================================================================*/
    /*
     * Usage:
     * $ export LD_LIBRARY_PATH=$HOME/Perso/gdcm/debug-gcc/bin
     * $ mono bin/SimplePrintPatientName.exe gdcmData/012345.002.050.dcm
     */
    /*
     This example was provided by Jonathan Morra /jonmorra gmail com/
     on the gdcm mailing list (Fri, 28 May 2010)
    */
    using System;
    using gdcm;

    namespace GDCMTest
    {
      class SimplePrintPatientName
        {
        static int Main(string[] args)
          {
          if (args.Length != 1)
            {
            Console.WriteLine("This program prints the patient name of a dicom file with gdcm");
            Console.WriteLine("Usage: [input.dcm]");
            return 1;
            }

          gdcm.Reader reader = new gdcm.Reader();
          reader.SetFileName(args[0]);
          bool ret = reader.Read();
          if( !ret )
            {
            return 1;
            }

          gdcm.File file = reader.GetFile();

          gdcm.StringFilter filter = new gdcm.StringFilter();
          filter.SetFile(file);
          string value = filter.ToString(new gdcm.Tag(0x0010, 0x0010));

          Console.WriteLine("Patient Name: " + value);
          return 0;
          }
        }
    }