package jpos;

public interface BaseControl
{
    // Properties
    public String  getCheckHealthText() throws JposException;
    public boolean getClaimed() throws JposException;
    public String  getDeviceControlDescription() throws JposException;
    public int     getDeviceControlVersion() throws JposException;
    public boolean getDeviceEnabled() throws JposException;
    public void    setDeviceEnabled(boolean deviceEnabled)
                       throws JposException;
    public String  getDeviceServiceDescription() throws JposException;
    public int     getDeviceServiceVersion() throws JposException;
    public boolean getFreezeEvents() throws JposException;
    public void    setFreezeEvents(boolean freezeEvents) throws JposException;
    public String  getPhysicalDeviceDescription() throws JposException;
    public String  getPhysicalDeviceName() throws JposException;
    public int     getResultCodeExtended() throws JposException;
    public int     getState() throws JposException;

    // Methods
    public void    claim(int timeout) throws JposException;
    public void    close() throws JposException;
    public void    checkHealth(int level) throws JposException;
    public void    directIO(int command, int[] data, Object string)
                       throws JposException;
    public void    open(String logicalDeviceName) throws JposException;
    public void    release() throws JposException;
}