Class Ipc
This class is the entry point to the IPC
functionality of the robot controller.
IPC can be used with RW 5.10 and later.
Inherited Members
Namespace: ABB.Robotics.Controllers.Messaging
Assembly: ABB.Robotics.Controllers.PC.dll
Syntax
public class Ipc : SDKBase, IComparable, INamedObject, IDisposable
Fields
IPC_MAXMSGSIZE
Maximum IPC message size (not including header)
Declaration
public const int IPC_MAXMSGSIZE = 444
Field Value
Type | Description |
---|---|
Int32 |
Properties
GetMaxPackageSize
Returns the maximum size of an Ipc package.
Declaration
public int GetMaxPackageSize { get; }
Property Value
Type | Description |
---|---|
Int32 |
MaxMessageSize
The maximum size of an Ipc message.
Declaration
public static int MaxMessageSize { get; }
Property Value
Type | Description |
---|---|
Int32 |
Queues
Returns the available Ipc queues of the controller. Can be used with RW 5.10 and later.
Declaration
public IpcQueue[] Queues { get; }
Property Value
Type | Description |
---|---|
IpcQueue[] |
Methods
CreateQueue(String, Int32, Int32)
Creates an Ipc queue.
Declaration
public IpcQueue CreateQueue(string name, int capacity, int msgSize)
Parameters
Type | Name | Description |
---|---|---|
String | name | Name of the queue. |
Int32 | capacity | The capacity (max number of messages) of the queue. |
Int32 | msgSize | Maximum size per message. |
Returns
Type | Description |
---|---|
IpcQueue | The created queue. |
Examples
Controller c = new Controller();
IpcQueue queue = c.Ipc.CreateQueue("RABQueue", 5, Ipc.MaxMessageSize);
DeleteQueue(Int32)
Deletes an Ipc queue.
Declaration
public void DeleteQueue(int id)
Parameters
Type | Name | Description |
---|---|---|
Int32 | id | Queue ID |
Examples
Controller c = new Controller()
int queueId = c.Ipc.GetQueueId("RABQueue");
if (c.Ipc.Exists(queueId)) c.Ipc.DeleteQueue(queueId)
Exists(String)
Checks if a named Ipc queue exists.
Declaration
public bool Exists(string name)
Parameters
Type | Name | Description |
---|---|---|
String | name | The name of the queue. |
Returns
Type | Description |
---|---|
Boolean | True if the named queue exists, otherwise false. |
GetQueue(Int32)
Returns an existing queue.
Declaration
public IpcQueue GetQueue(int id)
Parameters
Type | Name | Description |
---|---|---|
Int32 | id | Queue ID. |
Returns
Type | Description |
---|---|
IpcQueue | The queue. |
GetQueue(String)
Gets an existing queue.
Declaration
public IpcQueue GetQueue(string name)
Parameters
Type | Name | Description |
---|---|---|
String | name | Name of the queue. |
Returns
Type | Description |
---|---|
IpcQueue | The queue. |
GetQueueId(String)
Returns the ID of the specified queue name.
Declaration
public int GetQueueId(string name)
Parameters
Type | Name | Description |
---|---|---|
String | name | The name of the Ipc queue. |
Returns
Type | Description |
---|---|
Int32 | The id of the queue. |
GetQueueName(Int32)
Returns the queue name from a specified queue ID.
Declaration
public string GetQueueName(int id)
Parameters
Type | Name | Description |
---|---|---|
Int32 | id | The ID. |
Returns
Type | Description |
---|---|
String | The name or null if ID is missing. |