SetAsynchronousOperations Method (original) (raw)

Summary

Enables or disables Asynchronous Operation support. It also sets the number of operations that can be invoked, if enabled.

Syntax

- (BOOL)setAsynchronousOperations:(BOOL)enabled invokedCount:(NSUInteger)invokedCount performedCount:(NSUInteger)performedCount error:(NSError **)error NS_SWIFT_NAME(setAsynchronousOperations(enabled:invokedCount:performedCount:)); 

Parameters

enabled
true to enable Asynchronous Operations; otherwise, false.

invokedCount
The number of operations (messages) that can be sent without a response.

performedCount
The number of Asynchronous Operations performed.

Example

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(); }