public Broadcast GetBroadcast(
int index
)
Public Function GetBroadcast (
index As Integer
) As Broadcast
public:
Broadcast^ GetBroadcast(
int index
)
The following example shows how to retrieve a Broadcast object from the Worker object's broadcast list.
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 the CAN message to broadcast
//
PcanMessage message = new PcanMessage(0x100, MessageType.Standard, 3, new byte[] { 1, 2, 3 }, false);
// Add the new broadcast using a CAN message and its interval
//
int index = myWorker.AddBroadcast(message, 100);
if (index < 0)
{
Console.WriteLine("The broadcast couldn't be configured.");
}
else
{
Console.WriteLine($"The broadcast object with index '{index}' was configured successfully.");
try
{
// Activate the worker object
//
myWorker.Start();
Console.WriteLine("The Worker object was activated successfully.");
// Wait some time for the message to be sent several times
//
Console.WriteLine("Broadcast is working....");
System.Threading.Thread.Sleep(5000);
// Get the broadcast object to modify it directly
//
Broadcast broadcast = myWorker.GetBroadcast(index);
if (broadcast != null)
{
// Update the CAN message being sent and its interval
//
broadcast.Message.ID = 0x200;
broadcast.Message.DLC = 8;
broadcast.Message.Data = new byte[] { 8, 7, 6, 5, 4, 3, 2, 1 };
broadcast.Interval = 1000;
// Wait some time for the modified message to be sent several times
//
Console.WriteLine("The broadcast object was modified.");
System.Threading.Thread.Sleep(5000);
}
else
{
Console.WriteLine($"The broadcast object with index '{index}' could not be retrieved.");
}
// 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 the CAN message to broadcast
'
Dim message As PcanMessage = New PcanMessage(&H100, MessageType.Standard, 3, New Byte() {1, 2, 3}, False)
' Add the new broadcast using a CAN message and its interval
'
Dim index As Integer = myWorker.AddBroadcast(message, 100)
If index < 0 Then
Console.WriteLine("The broadcast couldn't be configured.")
Else
Console.WriteLine($"The broadcast object with index '{index}' was configured successfully.")
Try
' Activate the worker object
'
myWorker.Start()
Console.WriteLine("The Worker object was activated successfully.")
' Wait some time for the message to be sent several times
'
Console.WriteLine("Broadcast is working....")
Threading.Thread.Sleep(5000)
' Get the broadcast object to modify it directly
'
Dim broadcast As Broadcast = myWorker.GetBroadcast(index)
If broadcast IsNot Nothing Then
' Update the CAN message being sent and its interval
'
broadcast.Message.ID = &H200
broadcast.Message.DLC = 8
broadcast.Message.Data = New Byte() {8, 7, 6, 5, 4, 3, 2, 1}
broadcast.Interval = 1000
' Wait some time for the modified message to be sent several times
'
Console.WriteLine("The broadcast object was modified.")
Threading.Thread.Sleep(5000)
Else
Console.WriteLine($"The broadcast object with index '{index}' could not be retrieved.")
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 the CAN message to broadcast
//
PcanMessage^ message = gcnew PcanMessage(0x100, MessageType::Standard, 3, gcnew array<Byte>{ 1, 2, 3 }, false);
// Add the new broadcast using a CAN message and its interval
//
int index = myWorker->AddBroadcast(message, 100);
if (index < 0)
{
Console::WriteLine("The broadcast couldn't be configured.");
}
else
{
Console::WriteLine("The broadcast object with index '{0}' was configured successfully.", index);
try
{
// Activate the worker object
//
myWorker->Start(false, false, false);
Console::WriteLine("The Worker object was activated successfully.");
// Wait some time for the message to be sent several times
//
Console::WriteLine("Broadcast is working....");
System::Threading::Thread::Sleep(5000);
// Get the broadcast object to modify it directly
//
Broadcast^ broadcast = myWorker->GetBroadcast(index);
if (broadcast != nullptr)
{
// Update the CAN message being sent and its interval
//
broadcast->Message->ID = 0x200;
broadcast->Message->DLC = 8;
broadcast->Message->Data = gcnew array<Byte>{ 8, 7, 6, 5, 4, 3, 2, 1 };
broadcast->Interval = 1000;
// Wait some time for the modified message to be sent several times
//
Console::WriteLine("The broadcast object was modified.");
System::Threading::Thread::Sleep(5000);
}
else
{
Console::WriteLine("The broadcast object with index '{0}' could not be retrieved.", 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);
}
}
IndexOutOfRangeException | The index parameter value is out of range. This must be in the range [0...MaximumBroadcastCount-1]. |