public bool RemoveBroacast(
ref Broadcast broadcast
)
Public Function RemoveBroacast (
ByRef broadcast As Broadcast
) As Boolean
public:
bool RemoveBroacast(
Broadcast^% broadcast
)
If a Broadcast object needs to be temporarily deactivated, it is not needed to delete it and create it again. Single Broadcast objects can be temporarily deactivated using the PauseBroadcast method and reactivated again using the ResumeBroadcast method. Using the property MessageBroadcasting is possible to activate/deactivate the Broadcast object processing.
The following example shows how to remove a Broadcast object.
In case of failure, an error messages is written to the console output using English as output language.
// Create the object using the default configuration
//
Worker myWorker = new Worker();
// Create a Broadcast object using a CAN message and its interval
//
PcanMessage message = new PcanMessage(0x100, MessageType.Standard, 3, new byte[] { 1, 2, 3 }, false);
Broadcast broadcast = new Broadcast(message, 100);
// Add the new broadcast using a Broadcast object
//
if (!myWorker.AddBroadcast(ref broadcast))
{
Console.WriteLine("The broadcast couldn't be configured");
}
else
{
Console.WriteLine($"The broadcast object with index '{broadcast.Index}' was configured successfully.");
try
{
// Activate the worker object
//
myWorker.Start();
Console.WriteLine("The Worker object was activated successfully.");
// Wait sometime for the message to be sent several times
//
Console.WriteLine("Broadcast is working....");
System.Threading.Thread.Sleep(5000);
// Remove the broadcast using an object
//
if (myWorker.RemoveBroacast(ref broadcast))
{
Console.WriteLine("The broadcast object was successfully removed.");
// Wait sometime to see the message is no being sent anymore
//
System.Threading.Thread.Sleep(3000);
}
else
Console.WriteLine($"The broadcast with index {broadcast.Index} couldn't be removed.");
// Deactivate the worker object, when it is no longer needed
//
myWorker.Stop();
Console.WriteLine("The Worker object was deactivated.");
}
catch(Exception ex)
{
Console.WriteLine($"An exception occurred by activating the Worker object. {ex.Message}");
}
}
' Create the object using the default configuration
'
Dim myWorker As Worker = New Worker()
' Create a Broadcast object using a CAN message and its interval
'
Dim message As PcanMessage = New PcanMessage(&H100, MessageType.Standard, 3, New Byte() {1, 2, 3}, False)
Dim broadcast As Broadcast = New Broadcast(message, 100)
' Add the new broadcast using a Broadcast object
'
If Not myWorker.AddBroadcast(broadcast) Then
Console.WriteLine("The broadcast couldn't be configured")
Else
Console.WriteLine($"The broadcast object with index '{broadcast.Index}' was configured successfully.")
Try
' Activate the worker object
'
myWorker.Start()
Console.WriteLine("The Worker object was activated successfully.")
' Wait sometime for the message to be sent several times
'
Console.WriteLine("Broadcast is working....")
Threading.Thread.Sleep(5000)
' Remove the broadcast using an object
'
If myWorker.RemoveBroacast(broadcast) Then
Console.WriteLine("The broadcast object was successfully removed.")
' Wait sometime to see the message is no being sent anymore
'
Threading.Thread.Sleep(3000)
Else
Console.WriteLine($"The broadcast with index {broadcast.Index} couldn't be removed.")
End If
' Deactivate the worker object, when it is no longer needed
'
myWorker.[Stop]()
Console.WriteLine("The Worker object was deactivated.")
Catch ex As Exception
Console.WriteLine($"An exception occurred by activating the Worker object. {ex.Message}")
End Try
End If
// Create the object using the default configuration
//
Worker^ myWorker = gcnew Worker();
// Create a Broadcast object using a CAN message and its interval
//
PcanMessage^ message = gcnew PcanMessage(0x100, MessageType::Standard, 3, gcnew array<Byte>{ 1, 2, 3 }, false);
Broadcast^ broadcast = gcnew Broadcast(message, 100);
// Add the new broadcast using a Broadcast object
//
if (!myWorker->AddBroadcast(broadcast))
{
Console::WriteLine("The broadcast couldn't be configured");
}
else
{
Console::WriteLine("The broadcast object with index '{0}' was configured successfully.", broadcast->Index);
try
{
// Activate the worker object
//
myWorker->Start(false, false, false);
Console::WriteLine("The Worker object was activated successfully.");
// Wait sometime for the message to be sent several times
//
Console::WriteLine("Broadcast is working....");
System::Threading::Thread::Sleep(5000);
// Remove the broadcast using an object
//
if (myWorker->RemoveBroacast(broadcast))
{
Console::WriteLine("The broadcast object was successfully removed.");
// Wait sometime to see the message is no being sent anymore
//
System::Threading::Thread::Sleep(3000);
}
else
Console::WriteLine("The broadcast with index {0} couldn't be removed.", broadcast->Index);
// Deactivate the worker object, when it is no longer needed
//
myWorker->Stop(false, false, false);
Console::WriteLine("The Worker object was deactivated.");
}
catch (Exception^ ex)
{
Console::WriteLine("An exception occurred by activating the Worker object. {0}", ex->Message);
}
}
ArgumentNullException | The broadcast parameter value is null. An object of type Broadcast is required. |