package nxm.sys.lib;

import nxm.sys.inc.Constants;

/**
  Base class for native primitives (coded in C).  <br>
  <br>
  Native commands are primitives whose open(), process(), and close()
  methods are written entirely in C and compiled for the local machine
  and/or processing nodes on DSP cards.<br>
  <br>
  This base class is used to sequence the calls to those methods.
  To build the C code, use nmbld.<br>
  <br>
  This is a container for methods that are specific to primitives.
  These include data generators, data processors, and data sinks. <br>
  <br>
  They normally execute in a sub-thread of the current shell.

  @author Jeff Schoen
*/
public class NPrimitive extends Command implements Constants {

  /** default constructor */
  public NPrimitive () {}

  public int checkin (Midas M) {
    return super.checkin(M);
  }

  public void setArgs (Args args) {
    super.setArgs(args);
  }

  public int open() {
    return (NOOP);
  }

  public int process() {
    return (FINISH);
  }

  public int processMessage (Message msg) {
    return (NOOP);
  }

  public int close() {
    return (NOOP);
  }
}
