Class ObjectArrayBuf_1<T>

Type Parameters:
T - Data type of the objects in the buffer.

public class ObjectArrayBuf_1<T> extends ObjectArrayBuf<T>
Class ObjectArrayBuf_1 provides a buffer for an array of object items sent or received using the Message Protocol (MP). The array element stride must be 1. While an instance of class ObjectArrayBuf may be constructed directly, normally you will use a factory method in class ObjectBuf. See that class for further information.
Version:
23-Mar-2009
Author:
Alan Kaminsky
  • Constructor Details

    • ObjectArrayBuf_1

      public ObjectArrayBuf_1(T[] theArray, Range theRange)
      Construct a new object array buffer.
      Parameters:
      theArray - Array.
      theRange - Range of array elements to include in the buffer. The stride is assumed to be 1.
  • Method Details

    • get

      public T get(int i)
      Obtain the given item from this buffer.

      The get() method must not block the calling thread; if it does, all message I/O in MP will be blocked. Obtain the given item from this buffer.

      The get() method must not block the calling thread; if it does, all message I/O in MP will be blocked. Obtain the given item from this buffer.

      The get() method must not block the calling thread; if it does, all message I/O in MP will be blocked.

      Overrides:
      get in class ObjectArrayBuf<T>
      Parameters:
      i - Item index in the range 0 .. length()-1.
      Returns:
      Item at index i.
    • put

      public void put(int i, T item)
      Store the given item in this buffer.

      The put() method must not block the calling thread; if it does, all message I/O in MP will be blocked.

      Overrides:
      put in class ObjectArrayBuf<T>
      Parameters:
      i - Item index in the range 0 .. length()-1.
      item - Item to be stored at index i.
    • getReductionBuf

      public Buf getReductionBuf(Op op)
      Create a buffer for performing parallel reduction using the given binary operation. The results of the reduction are placed into this buffer.

      Operations performed on the returned reduction buffer have the same effect as operations performed on this buffer, except whenever a source item S is put into a destination item D in this buffer, D is set to D op S, that is, the reduction of D and S using the given binary operation (rather than just setting D to S). Create a buffer for performing parallel reduction using the given binary operation. The results of the reduction are placed into this buffer. Create a buffer for performing parallel reduction using the given binary operation. The results of the reduction are placed into this buffer.

      Overrides:
      getReductionBuf in class ObjectArrayBuf<T>
      Parameters:
      op - Binary operation.
      Returns:
      a Buf object.
      Throws:
      ClassCastException - (unchecked exception) Thrown if this buffer's element data type and the given binary operation's argument data type are not the same.