Package org.harctoolbox.harchardware.ir
Class DevLirc
java.lang.Object
org.harctoolbox.harchardware.ir.DevLirc
- All Implemented Interfaces:
Closeable
,AutoCloseable
,IHarcHardware
,ICapture
,IIrReader
,IIrSenderStop
,IRawIrSender
,IReceive
,ITransmitter
public class DevLirc
extends Object
implements IRawIrSender, IReceive, ICapture, ITransmitter, IIrSenderStop
-
Field Summary
Fields inherited from interface org.harctoolbox.harchardware.ir.IIrReader
DEFAULT_BEGIN_TIMEOUT, DEFAULT_CAPTURE_MAXSIZE, DEFAULT_ENDING_TIMEOUT
Fields inherited from interface org.harctoolbox.harchardware.ir.IRawIrSender
repeatMax
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
canSend()
boolean
boolean
org.harctoolbox.ircore.ModulatedIrSequence
capture()
Listens to the device and returns a sequence.void
close()
static File[]
int
Returns a default Transmitter for the device.getTransmitter
(int number) getTransmitter
(String connector) Parses the String argument, and returns a transmitter accordingly.String[]
Return possible name of transmitters, that are guaranteed to work with the getTransmitter(String).Returns the hardware version (not the version of the driver software).boolean
isValid()
Checks validity of an instance.static void
void
open()
Opens the device with previously set parameters.org.harctoolbox.ircore.IrSequence
receive()
Listens to the device and returns a sequence.boolean
sendIr
(org.harctoolbox.ircore.IrSignal irSignal, int count, LircTransmitter transmitter) boolean
sendIr
(org.harctoolbox.ircore.IrSignal irSignal, int count, Transmitter transmitter) void
setBeginTimeout
(int timeout) void
setCaptureMaxSize
(int integer) void
setDebug
(int debug) Sets a debug parameter.void
setEndingTimeout
(int integer) void
setTimeout
(int timeout) Deprecated.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
stopIr
(Transmitter transmitter) Stops ongoing IR transmission.boolean
Signals the receiving device that it should stop receiving.toString()
-
Field Details
-
DEV
- See Also:
-
DEVSLASHLIRC
- See Also:
-
LIRCDEVPATTERN
- See Also:
-
-
Constructor Details
-
DevLirc
public DevLirc(String deviceName, boolean verbose) throws org.harctoolbox.devslashlirc.LircDeviceException - Throws:
org.harctoolbox.devslashlirc.LircDeviceException
-
DevLirc
public DevLirc(String deviceName, boolean verbose, Integer timeout) throws org.harctoolbox.devslashlirc.LircDeviceException - Throws:
org.harctoolbox.devslashlirc.LircDeviceException
-
DevLirc
- Throws:
org.harctoolbox.devslashlirc.LircDeviceException
-
DevLirc
public DevLirc() throws org.harctoolbox.devslashlirc.LircDeviceException- Throws:
org.harctoolbox.devslashlirc.LircDeviceException
-
-
Method Details
-
getCandidates
-
main
-
canSend
public boolean canSend()- Returns:
- the canSend
-
canReceive
public boolean canReceive()- Returns:
- the canReceive
-
getNumberTransmitters
public int getNumberTransmitters()- Returns:
- the numberTransmitters
-
canSetCarrier
public boolean canSetCarrier()- Returns:
- the canSetCarrier
-
canSetTransmitter
public boolean canSetTransmitter()- Returns:
- the canSetTransmitter
-
sendIr
public boolean sendIr(org.harctoolbox.ircore.IrSignal irSignal, int count, Transmitter transmitter) throws HarcHardwareException - Specified by:
sendIr
in interfaceIRawIrSender
- Returns:
- if false, command failed.
- Throws:
NoSuchTransmitterException
HarcHardwareException
-
sendIr
public boolean sendIr(org.harctoolbox.ircore.IrSignal irSignal, int count, LircTransmitter transmitter) throws HarcHardwareException - Throws:
HarcHardwareException
-
receive
public org.harctoolbox.ircore.IrSequence receive() throws HarcHardwareException, org.harctoolbox.ircore.OddSequenceLengthExceptionDescription 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:
HarcHardwareException
- if the device is not in valid/open state.org.harctoolbox.ircore.OddSequenceLengthException
-
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
-
stopIr
Description copied from interface:IIrSenderStop
Stops ongoing IR transmission.- Specified by:
stopIr
in interfaceIIrSenderStop
- Returns:
- if false, command failed.
-
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.
- Throws:
IOException
-
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.
-
setTimeout
Deprecated.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
-
setEndingTimeout
public void setEndingTimeout(int integer) - Specified by:
setEndingTimeout
in interfaceIIrReader
-
open
Description copied from interface:IHarcHardware
Opens the device with previously set parameters.- Specified by:
open
in interfaceIHarcHardware
- Throws:
HarcHardwareException
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
getTransmitter
Description copied from interface:IRawIrSender
Returns a default Transmitter for the device. May be null if the device ignores the Transmitter argument in sendIr.- Specified by:
getTransmitter
in interfaceIRawIrSender
- Specified by:
getTransmitter
in interfaceITransmitter
- Returns:
- Transmitter
-
getTransmitter
Description copied from interface:ITransmitter
Parses the String argument, and returns a transmitter accordingly. Syntax and semantics may vary.- Specified by:
getTransmitter
in interfaceITransmitter
- Parameters:
connector
- String describing desired port. Syntax is dependent on the implementing class.- Returns:
- Transmitter
- Throws:
NoSuchTransmitterException
-
getTransmitter
- Throws:
NoSuchTransmitterException
-
getTransmitterNames
Description copied from interface:ITransmitter
Return possible name of transmitters, that are guaranteed to work with the getTransmitter(String). This may be generated by inquiring the device, producing correct result, or it may be some static function, describing transmitters not necessarily present on the actually deployed device.- Specified by:
getTransmitterNames
in interfaceITransmitter
- Returns:
- Array of strings that are guaranteed to work with the getTransmitter(String)
-
toString
-
capture
public org.harctoolbox.ircore.ModulatedIrSequence capture() throws HarcHardwareException, org.harctoolbox.ircore.OddSequenceLengthExceptionDescription 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.org.harctoolbox.ircore.OddSequenceLengthException
-
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
-