Leadtools.Dicom Requires Medical product license | Send comments on this topic. | Back to Introduction - All Topics | Help Version 15.10.31
Reset Method
See Also  Example
Leadtools.Dicom Namespace > DicomDataSet Class : Reset Method




Removes all items from the Data Set.

Syntax

Visual Basic (Declaration) 
Public Sub Reset() 
Visual Basic (Usage)Copy Code
Dim instance As DicomDataSet
 
instance.Reset()
C# 
public void Reset()
Managed Extensions for C++ 
public: void Reset(); 
C++/CLI 
public:
void Reset(); 

Example

This example will initialize a DICOMDIR, enumerate and update its keys.

Visual BasicCopy Code
Public Sub DicomDIRSample()
  'Make sure to initialize the DICOM engine, this needs to be done only once
  DicomEngine.Startup()
    Dim dicomDIR As DicomDataSet = New DicomDataSet()
    Using (dicomDIR)
       dicomDIR.Reset()
       'Initialize the dataset as a DICOMDIR class
       dicomDIR.Initialize(DicomClassType.BasicDirectory, DicomDataSetInitializeType.ExplicitVRLittleEndian)
       Debug.Assert(dicomDIR.InformationClass = DicomClassType.BasicDirectory)
       Debug.Assert(dicomDIR.InformationFlags = (DicomDataSetFlags.ExplicitVR Or DicomDataSetFlags.LittleEndian Or DicomDataSetFlags.MetaHeaderPresent))
       'Insert a patient level key
       Dim patientKey As DicomElement = dicomDIR.InsertKey(Nothing, DicomDirKeyType.Patient, True)
       'Insert a study key under the patient key
       Dim studyKey As DicomElement = dicomDIR.InsertKey(patientKey, DicomDirKeyType.Study, True)
       'Now insert three series keys under the study key
       Dim seriesKey As DicomElement = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, True)
       seriesKey = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, True)
       seriesKey = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, True)
       Dim key As DicomElement = dicomDIR.GetRootKey(seriesKey)
       'Get the key value, You can also call GetKeyValuePtr
       Dim keyValue As DicomDirKeyType = dicomDIR.GetKeyValue(key)
       'The root key for the series key should be patient
       Debug.Assert(keyValue = DicomDirKeyType.Patient, "The root key for the series key should be patient in this case")
       'Get the parent key for the series, it should be study
       key = dicomDIR.GetParentKey(seriesKey)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Study, "The parent key for the series key should be study in this case")
       'The child for the study key should be series
       key = dicomDIR.GetChildKey(studyKey)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Series, "The child for the study key should be series")
       'The first key should be patient, if we traverse the DICOMDIR as a list
       key = dicomDIR.GetFirstKey(studyKey, False)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Patient)
       'The last key should be series, if we traverse the DICOMDIR as a list
       key = dicomDIR.GetLastKey(studyKey, False)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Series)
       'The key before the study key should be patient, if we traverse the DICOMDIR as a list
       key = dicomDIR.GetPreviousKey(studyKey, False)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Patient)
       'The key after the study key should be series, if we traverse the DICOMDIR as a list
       key = dicomDIR.GetNextKey(studyKey, False)
       keyValue = dicomDIR.GetKeyValue(key)
       Debug.Assert(keyValue = DicomDirKeyType.Series)
       'If we delete the study key, the series keys under it will get deleted too
       dicomDIR.DeleteKey(studyKey)
       key = dicomDIR.FindFirstKey(Nothing, DicomDirKeyType.Series, False)
       Debug.Assert(key Is Nothing)
       key = dicomDIR.FindLastKey(Nothing, DicomDirKeyType.Series, False)
       Debug.Assert(key Is Nothing)
       key = dicomDIR.FindPreviousKey(Nothing, False)
       Debug.Assert(key Is Nothing)
       key = dicomDIR.FindNextKey(Nothing, False)
       Debug.Assert(key Is Nothing)
    End Using

    DicomEngine.Shutdown()
 End Sub
C#Copy Code
public void DicomDIRSample() 

   //Make sure to initialize the DICOM engine, this needs to be done only once  
   DicomEngine.Startup(); 
   using (DicomDataSet dicomDIR = new DicomDataSet()) 
   { 
      dicomDIR.Reset(); 
      //Initialize the dataset as a DICOMDIR class 
      dicomDIR.Initialize(DicomClassType.BasicDirectory, DicomDataSetInitializeType.ExplicitVRLittleEndian); 
      Debug.Assert(dicomDIR.InformationClass == DicomClassType.BasicDirectory); 
      Debug.Assert(dicomDIR.InformationFlags == (DicomDataSetFlags.ExplicitVR | DicomDataSetFlags.LittleEndian | DicomDataSetFlags.MetaHeaderPresent)); 
      //Insert a patient level key 
      DicomElement patientKey = dicomDIR.InsertKey(null, DicomDirKeyType.Patient, true); 
      //Insert a study key under the patient key 
      DicomElement studyKey = dicomDIR.InsertKey(patientKey, DicomDirKeyType.Study, true); 
      //Now insert three series keys under the study key 
      DicomElement seriesKey = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, true); 
      seriesKey = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, true); 
      seriesKey = dicomDIR.InsertKey(studyKey, DicomDirKeyType.Series, true); 
      DicomElement key = dicomDIR.GetRootKey(seriesKey); 
      //Get the key value, You can also call GetKeyValuePtr 
      DicomDirKeyType keyValue = dicomDIR.GetKeyValue(key); 
      //The root key for the series key should be patient 
      Debug.Assert(keyValue == DicomDirKeyType.Patient, "The root key for the series key should be patient in this case"); 
      //Get the parent key for the series, it should be study 
      key = dicomDIR.GetParentKey(seriesKey); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Study, "The parent key for the series key should be study in this case"); 
      //The child for the study key should be series 
      key = dicomDIR.GetChildKey(studyKey); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Series, "The child for the study key should be series"); 
      //The first key should be patient, if we traverse the DICOMDIR as a list 
      key = dicomDIR.GetFirstKey(studyKey, false); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Patient); 
      //The last key should be series, if we traverse the DICOMDIR as a list 
      key = dicomDIR.GetLastKey(studyKey, false); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Series); 
      //The key before the study key should be patient, if we traverse the DICOMDIR as a list 
      key = dicomDIR.GetPreviousKey(studyKey, false); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Patient); 
      //The key after the study key should be series, if we traverse the DICOMDIR as a list 
      key = dicomDIR.GetNextKey(studyKey, false); 
      keyValue = dicomDIR.GetKeyValue(key); 
      Debug.Assert(keyValue == DicomDirKeyType.Series); 
      //If we delete the study key, the series keys under it will get deleted too 
      dicomDIR.DeleteKey(studyKey); 
      key = dicomDIR.FindFirstKey(null, DicomDirKeyType.Series, false); 
      Debug.Assert(key == null); 
      key = dicomDIR.FindLastKey(null, DicomDirKeyType.Series, false); 
      Debug.Assert(key == null); 
      key = dicomDIR.FindPreviousKey(null, false); 
      Debug.Assert(key == null); 
      key = dicomDIR.FindNextKey(null, false); 
      Debug.Assert(key == null); 
   } 
   DicomEngine.Shutdown(); 
}

Remarks

To create a Data Set that includes elements for a specific class, call the Initialize method.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

Leadtools.Dicom requires a Medical toolkit license and unlock key. For more information, refer to: Raster Pro/Document/Medical Features