Package org.harctoolbox.harchardware.ir
Class LircMode2
java.lang.Object
org.harctoolbox.harchardware.ir.LircMode2
- All Implemented Interfaces:
Closeable
,AutoCloseable
,IHarcHardware
,ICapture
,IIrReader
,IReceive
This class runs an external program, for example mode2 of LIRC, in a separate process,
and evaluates its output, which is assumed to be in the LIRC mode2 format.
-
Field Summary
Fields inherited from interface org.harctoolbox.harchardware.ir.IIrReader
DEFAULT_BEGIN_TIMEOUT, DEFAULT_CAPTURE_MAXSIZE, DEFAULT_ENDING_TIMEOUT
-
Constructor Summary
ConstructorDescriptionLircMode2
(boolean verbose, int endingTimeout) LircMode2
(InputStream inputStream, boolean verbose, int endingTimeout) -
Method Summary
Modifier and TypeMethodDescriptionorg.harctoolbox.ircore.ModulatedIrSequence
capture()
Listens to the device and returns a sequence.void
close()
Returns the hardware version (not the version of the driver software).boolean
isValid()
Checks validity of an instance.void
open()
Opens the device with previously set parameters.org.harctoolbox.ircore.IrSequence
receive()
Listens to the device and returns a sequence.void
setBeginTimeout
(int integer) void
setCaptureMaxSize
(int integer) void
setDebug
(int debug) Sets a debug parameter.void
setEndingTimeout
(int timeout) void
setTimeout
(int timeout) Set timeout in milliseconds.void
setVerbose
(boolean verbose) Sets a verbosity flag, causing commands to be executed verbosely.boolean
Signals the capturing device that it should stop capturing.boolean
Signals the receiving device that it should stop receiving.
-
Constructor Details
-
LircMode2
-
LircMode2
-
LircMode2
public LircMode2(boolean verbose, int endingTimeout)
-
-
Method Details
-
getVersion
Description copied from interface:IHarcHardware
Returns the hardware version (not the version of the driver software). May be null if no relevant information available.- Specified by:
getVersion
in interfaceIHarcHardware
- Returns:
- Version string. Semantics can vary.
-
setVerbose
public void setVerbose(boolean verbose) Description copied from interface:IHarcHardware
Sets a verbosity flag, causing commands to be executed verbosely. Exact semantic depends on the implementation. Typically, all communication with the device is echoed to stderr.- Specified by:
setVerbose
in interfaceIHarcHardware
- Parameters:
verbose
- on or off
-
setDebug
public void setDebug(int debug) Description copied from interface:IHarcHardware
Sets a debug parameter. Exact semantic depends on the implementation.- Specified by:
setDebug
in interfaceIHarcHardware
-
isValid
public boolean isValid()Description copied from interface:IHarcHardware
Checks validity of an instance. Exact meaning can vary.- Specified by:
isValid
in interfaceIHarcHardware
- Returns:
- validity of the instance.
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
open
Description copied from interface:IHarcHardware
Opens the device with previously set parameters.- Specified by:
open
in interfaceIHarcHardware
- Throws:
IOException
-
capture
public org.harctoolbox.ircore.ModulatedIrSequence capture() throws HarcHardwareException, IOExceptionDescription copied from interface:ICapture
Listens to the device and returns a sequence. Requires the device to be previously opened. Should itself neither open or close the device.- Specified by:
capture
in interfaceICapture
- Returns:
- Captured sequence, or null by timeout.
- Throws:
HarcHardwareException
- if the device is not in valid/open state.IOException
-
stopCapture
public boolean stopCapture()Description copied from interface:ICapture
Signals the capturing device that it should stop capturing. May not be implemented in all hardware.- Specified by:
stopCapture
in interfaceICapture
- Returns:
- status
-
setEndingTimeout
public void setEndingTimeout(int timeout) - Specified by:
setEndingTimeout
in interfaceIIrReader
-
receive
Description copied from interface:IReceive
Listens to the device and returns a sequence. Requires the device to be previously opened. Should itself neither open or close the device.- Specified by:
receive
in interfaceIReceive
- Returns:
- Captured sequence, or null by timeout.
- Throws:
IOException
HarcHardwareException
- if the device is not in valid/open state.
-
stopReceive
public boolean stopReceive()Description copied from interface:IReceive
Signals the receiving device that it should stop receiving. May not be implemented in all hardware.- Specified by:
stopReceive
in interfaceIReceive
- Returns:
- status
-
setTimeout
Description copied from interface:IHarcHardware
Set timeout in milliseconds. Exact semantics may be dependent on the hardware.- Specified by:
setTimeout
in interfaceIHarcHardware
- Parameters:
timeout
- Timeout in milliseconds.- Throws:
IOException
-
setBeginTimeout
- Specified by:
setBeginTimeout
in interfaceIIrReader
- Throws:
IOException
-
setCaptureMaxSize
public void setCaptureMaxSize(int integer) - Specified by:
setCaptureMaxSize
in interfaceIIrReader
-