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




item
An item of a sequence of items in the Data Set. The method returns the number of Digital Signatures in this Item. If this parameter is set to null, the method will return the number of Digital Signatures in the main Data Set.
Returns the number of Digital Signatures in the main Data Set or in an item of a sequence of items.

Syntax

Visual Basic (Declaration) 
Public Function GetSignaturesCount( _
   ByVal item As DicomElement _
) As Integer
Visual Basic (Usage)Copy Code
Dim instance As DicomDataSet
Dim item As DicomElement
Dim value As Integer
 
value = instance.GetSignaturesCount(item)
C# 
public int GetSignaturesCount( 
   DicomElement item
)
Managed Extensions for C++ 
public: int GetSignaturesCount( 
   DicomElement* item
) 
C++/CLI 
public:
int GetSignaturesCount( 
   DicomElement^ item
) 

Parameters

item
An item of a sequence of items in the Data Set. The method returns the number of Digital Signatures in this Item. If this parameter is set to null, the method will return the number of Digital Signatures in the main Data Set.

Return Value

The number of Digital Signatures in the specified item, or in the main Data Set if no item is specified.

Example

This example will enumerate all digital signatures in a DICOM dataset.

Visual BasicCopy Code
Public Sub EnumerateSignatures()
  Dim dicomFileName As String = "C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 14.5\Images\Signed.dcm"
  'Make sure to initialize the DICOM engine, this needs to be done only once
  'In the whole application
  DicomEngine.Startup()

  Dim dataset As DicomDataSet = New DicomDataSet()
    Using (dataset)
       'Load DICOM File
       dataset.Load(dicomFileName, DicomDataSetLoadFlags.None)
       ' We will enumerate the Digital Signatures in the main Data Set
       Dim signaturesCount As Integer = dataset.GetSignaturesCount(Nothing)
       If signaturesCount = 0 Then
          MessageBox.Show("No Digital Signatures in the main Data Set.")
          Return
       End If
       Dim msg As String
       If signaturesCount = 1 Then
          msg = "There is 1 Digital Signature in the main Data Set.Do you want to examine it?"
       Else
          msg = String.Format("There are {0} Digital Signatures in the main Data Set. Do you want to examine them?", signaturesCount)
       End If
       If MessageBox.Show(msg, "Sample", MessageBoxButtons.YesNo) <> DialogResult.Yes Then
          Return
       End If
       Dim i As Integer = 0
       Do While i < signaturesCount
          ExamineSignature(dataset, dataset.GetSignature(Nothing, i))
          i += 1
       Loop
    End Using

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

   string dicomFileName = @"C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 14.5\Images\Signed.dcm"; 
   //Make sure to initialize the DICOM engine, this needs to be done only once  
   //In the whole application 
   DicomEngine.Startup(); 
   using (DicomDataSet dataset = new DicomDataSet()) 
   { 
      //Load DICOM File 
      dataset.Load(dicomFileName, DicomDataSetLoadFlags.None); 
      // We will enumerate the Digital Signatures in the main Data Set 
      int signaturesCount = dataset.GetSignaturesCount(null);  
      if (signaturesCount == 0) 
      { 
         MessageBox.Show("No Digital Signatures in the main Data Set."); 
         return; 
      } 
      string msg; 
      if(signaturesCount ==1) 
      { 
         msg = "There is 1 Digital Signature in the main Data Set.Do you want to examine it?"; 
      } 
      else 
      { 
         msg = String.Format("There are {0} Digital Signatures in the main Data Set. Do you want to examine them?", signaturesCount); 
      } 
      if(MessageBox.Show(msg, "Sample", MessageBoxButtons.YesNo) != DialogResult.Yes) 
      { 
         return; 
      } 
      for(int i = 0; i < signaturesCount; i++) 
      { 
         ExamineSignature(dataset, dataset.GetSignature(null, i));  
      } 
   } 
   DicomEngine.Shutdown(); 
}

Remarks

The method computes the number of Digital Signatures by counting the number of items under the Digital Signatures sequence (FFFA,FFFA) which is located under the item specified by item or on the root of the Data Set if the parameter is set to null. The method will return 0 if this sequence does not exist.

One way of enumerating the Digital Signatures in the main Data Set or in an item of a sequence of items is by using this method along with the GetSignature 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