Search Results for

    Show / Hide Table of Contents

    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.

    Inheritance
    Object
    NamedObject
    SDKBase
    Ipc
    Implements
    IComparable
    INamedObject
    IDisposable
    Inherited Members
    SDKBase.Dispose()
    SDKBase.Dispose(Boolean)
    NamedObject.Equals(String)
    NamedObject.Equals(NamedObject)
    NamedObject.Equals(Object)
    NamedObject.CompareTo(String)
    NamedObject.CompareTo(NamedObject)
    NamedObject.CompareTo(Object)
    NamedObject.GetHashCode()
    NamedObject.ToString()
    NamedObject.Name
    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.

    Implements

    System.IComparable
    INamedObject
    System.IDisposable
    In This Article
    Back to top Copyright © 2021 ABB