LEADTOOLS Medical (Leadtools.Dicom assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
Reset Method
See Also 
Leadtools.Dicom Namespace > DicomDataSet Class : Reset Method



Removes all items from the Data Set. Supported in Silverlight, Windows Phone 7.

Syntax

Visual Basic (Declaration) 
Public Sub Reset() 
Visual Basic (Usage)Copy Code
Dim instance As DicomDataSet
 
instance.Reset()
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();
}
SilverlightCSharpCopy Code
SilverlightVBCopy Code

Remarks

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

Requirements

Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also

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