←Select platform

IsRoleSelect Method

Summary

Determines whether Role Selection is enabled for the specified Presentation Context of the DICOM Associate.

Syntax
C#
VB
C++
public bool IsRoleSelect( 
   byte id 
) 
Public Function IsRoleSelect( _ 
   ByVal id As Byte _ 
) As Boolean 
public: 
bool IsRoleSelect(  
   byte id 
)  

Parameters

id
Presentation Context ID of the Presentation Context for which to check Role Selection. The ID provides information about both the class type of the data and the Transfer Syntax to use when transferring the data. It also identifies a specific Presentation Context within an Associate.

Return Value

true if the Role Selection is enabled for the specified Presentation Context of the DICOM Associate; otherwise, it is false.

Remarks

If Role Selection is enabled, the roles for the Presentation Context can be retrieved using GetUserRole and GetProviderRole. To set the roles for the Presentation Context, use SetRoleSelect.

Example
C#
VB
using Leadtools; 
using Leadtools.Dicom; 
 
void BuildVerifyAssociate() 
{ 
   //Make sure to initialize the DICOM engine, this needs to be done only once  
   //In the whole application 
   DicomEngine.Startup(); 
   using (DicomAssociate associate = new DicomAssociate(true)) 
   { 
      //Role Select 
      associate.AddPresentationContext(1, 0, DicomUidType.VerificationClass); 
      associate.SetRoleSelect(1, true, DicomRoleSupport.Supported, DicomRoleSupport.Unsupported); 
      Debug.Assert(associate.IsRoleSelect(1) == true); 
      Debug.Assert(associate.GetUserRole(1) == DicomRoleSupport.Supported); 
      Debug.Assert(associate.GetProviderRole(1) == DicomRoleSupport.Unsupported); 
 
      //Extended Data 
      associate.SetExtendedData(1, new byte[] { 55 }); 
      Debug.Assert(associate.GetExtendedDataLength(1) == 1); 
      byte[] extendedData = associate.GetExtendedData(1); 
      Debug.Assert(extendedData[0] == 55); 
      // We can also call GetExtendedDataPtr 
 
      //Asynchronous Operations 
      associate.SetAsynchronousOperations(true, 5, 5); 
      Debug.Assert(associate.IsAsynchronousOperations == true); 
      Debug.Assert(associate.InvokedOperationsCount == 5); 
      Debug.Assert(associate.PerformedOperationsCount == 5); 
 
      //User Information 
      associate.AddUserInformation(4, new byte[] { 88 }); 
      Debug.Assert(associate.UserInformationCount == 1); 
      Debug.Assert(associate.GetUserInformationType(0) == 4); 
      Debug.Assert(associate.GetUserInformationDataLength(0) == 1); 
      Debug.Assert(associate.GetUserInformationDataPtr(0) != null); 
      byte[] userInformationData = associate.GetUserInformationData(0); 
      Debug.Assert(userInformationData[0] == 88); 
      associate.SetUserInformation(0, 3, new byte[] { 56 }); 
      userInformationData = associate.GetUserInformationData(0); 
      Debug.Assert(userInformationData[0] == 56); 
      associate.DeleteUserInformation(0); 
   } 
   DicomEngine.Shutdown(); 
} 
Imports Leadtools 
Imports Leadtools.Dicom 
 
Private Sub BuildVerifyAssociate() 
   'Make sure to initialize the DICOM engine, this needs to be done only once  
   'In the whole application 
   DicomEngine.Startup() 
 
 
   Using associate As DicomAssociate = New DicomAssociate(True) 
 
      'Role Select 
      associate.AddPresentationContext(1, 0, DicomUidType.VerificationClass) 
      associate.SetRoleSelect(1, True, DicomRoleSupport.Supported, DicomRoleSupport.Unsupported) 
      Debug.Assert(associate.IsRoleSelect(1) = True) 
      Debug.Assert(associate.GetUserRole(1) = DicomRoleSupport.Supported) 
      Debug.Assert(associate.GetProviderRole(1) = DicomRoleSupport.Unsupported) 
 
      'Extended Data 
      associate.SetExtendedData(1, New Byte() {55}) 
      Debug.Assert(associate.GetExtendedDataLength(1) = 1) 
      Dim extendedData As Byte() = associate.GetExtendedData(1) 
      Debug.Assert(extendedData(0) = 55) 
      ' We can also call GetExtendedDataPtr 
 
      'Asynchronous Operations 
      associate.SetAsynchronousOperations(True, 5, 5) 
      Debug.Assert(associate.IsAsynchronousOperations = True) 
      Debug.Assert(associate.InvokedOperationsCount = 5) 
      Debug.Assert(associate.PerformedOperationsCount = 5) 
 
      'User Information 
      associate.AddUserInformation(4, New Byte() {88}) 
      Debug.Assert(associate.UserInformationCount = 1) 
      Debug.Assert(associate.GetUserInformationType(0) = 4) 
      Debug.Assert(associate.GetUserInformationDataLength(0) = 1) 
      Debug.Assert(Not associate.GetUserInformationDataPtr(0) = Nothing) 
      Dim userInformationData As Byte() = associate.GetUserInformationData(0) 
      Debug.Assert(userInformationData(0) = 88) 
      associate.SetUserInformation(0, 3, New Byte() {56}) 
      userInformationData = associate.GetUserInformationData(0) 
      Debug.Assert(userInformationData(0) = 56) 
      associate.DeleteUserInformation(0) 
   End Using 
   DicomEngine.Shutdown() 
End Sub 

Requirements

Target Platforms

Help Version 20.0.2020.3.31
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Dicom Assembly