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




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.
Determines whether Role Selection is enabled for the specified Presentation Context of the DICOM Associate.

Syntax

Visual Basic (Declaration) 
Public Function IsRoleSelect( _
   ByVal id As Byte _
) As Boolean
Visual Basic (Usage)Copy Code
Dim instance As DicomAssociate
Dim id As Byte
Dim value As Boolean
 
value = instance.IsRoleSelect(id)
C# 
public bool IsRoleSelect( 
   byte id
)
Managed Extensions for C++ 
public: bool IsRoleSelect( 
   byte id
) 
C++/CLI 
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.

Example

Visual BasicCopy Code
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
C#Copy Code
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(); 
}

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.

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