public final class ModulatedIrSequence extends IrSequence
| Modifier and Type | Field and Description |
|---|---|
static double |
DEFAULT_DEMODULATE_THRESHOLD |
static double |
DEFAULT_DUTYCYCLE |
static double |
DEFAULT_FREQUENCY |
static ModulatedIrSequence |
EMPTY |
DUMMYGAPDURATION| Constructor and Description |
|---|
ModulatedIrSequence() |
ModulatedIrSequence(double[] durations,
Double frequency)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(double[] durations,
Double frequency,
Double dutyCycle)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(int[] durations,
Double frequency)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(int[] durations,
Double frequency,
Double dutyCycle)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(IrSequence irSequence,
Double frequency)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(IrSequence irSequence,
Double frequency,
Double dutyCycle)
Constructs a ModulatedIrSequence from its arguments.
|
ModulatedIrSequence(ModulatedIrSequence src,
int start,
int length) |
| Modifier and Type | Method and Description |
|---|---|
ModulatedIrSequence |
addNoise(double max)
Adds a random number in the interval [-max, max) to each flash, and
subtract it from the next gap.
|
ModulatedIrSequence |
append(double delay)
Appends a delay to the end of the ModulatedIrSequence.
|
ModulatedIrSequence |
append(ModulatedIrSequence tail) |
boolean |
approximatelyEquals(ModulatedIrSequence irSequence)
Compares two ModulatedIrSequences for (approximate) equality.
|
boolean |
approximatelyEquals(ModulatedIrSequence irSequence,
double absoluteTolerance,
double relativeTolerance)
Compares two ModulatedIrSequences for (approximate) equality.
|
boolean |
approximatelyEquals(ModulatedIrSequence irSequence,
double absoluteTolerance,
double relativeTolerance,
double frequencyTolerance)
Compares two ModulatedIrSequences for (approximate) equality.
|
boolean |
approximatelyEquals(ModulatedIrSequence irSequence,
double absoluteTolerance,
double relativeTolerance,
double frequencyTolerance,
double dutyCycleTolerance)
Compares two ModulatedIrSequences for (approximate) equality.
|
List<IrSequence> |
chop(double amount)
Chops a IrSequence in parts.
|
ModulatedIrSequence |
clone()
Creates and returns a copy of this object.
|
static ModulatedIrSequence |
concatenate(Collection<IrSequence> sequences,
double frequency,
double dutyCycle) |
static ModulatedIrSequence |
concatenate(ModulatedIrSequence[] seqs)
Concatenates the IrSequences in the argument to a new sequence.
|
static ModulatedIrSequence |
demodulate(IrSequence irSequence)
Equivalent to the two parameter version with a default threshold.
|
static ModulatedIrSequence |
demodulate(IrSequence irSequence,
double threshold)
From a (non-modulated) IrSequence, consisting of on- and off-periods,
remove the modulation and determine a modulation frequency and duty cycle,
gathered from the statistics of the input IrSequence.
|
static Double |
frequencyAverage(Iterable<ModulatedIrSequence> seqs) |
Double |
getDutyCycle() |
double |
getDutyCycleWithDefault() |
Double |
getFrequency() |
double |
getFrequencyWithDefault() |
static double |
getFrequencyWithDefault(Double frequency) |
static boolean |
isValidDutyCycle(Double dutyCycle)
Checks the argument for null or validity of duty cycle (0, 1).
|
boolean |
isZeroModulated() |
IrSequence |
modulate()
Generates a IrSequence, consisting of on- and off-periods,
containing the modulation, as per the modulation frequency and duty cycle.
|
ModulatedIrSequence |
setFrequency(Double newFrequency) |
IrSignal |
toIrSignal() |
String |
toStringFrequency() |
String |
toStringFrequency(boolean alternatingSigns) |
addToFlashes, addToGaps, append, append, approximatelyEquals, approximatelyEquals, approximatelyEquals, approximatelyEquals, concatenate, concatenate, containsZeros, firstBigGap, flashExcess, get, getLastGap, getLength, getTotalDuration, getTotalDuration, initRandom, initRandom, isEmpty, normalize, replaceZeros, stripDecoratedString, subSequence, toDoubles, toDoublesPreservingSigns, toInterleavingList, toInts, toInts, toPulses, toString, toString, toString, toString, truncatepublic static final double DEFAULT_FREQUENCY
public static final double DEFAULT_DUTYCYCLE
public static final double DEFAULT_DEMODULATE_THRESHOLD
public static final ModulatedIrSequence EMPTY
public ModulatedIrSequence()
public ModulatedIrSequence(IrSequence irSequence, Double frequency, Double dutyCycle)
irSequence - irSequence to be copied fromfrequency - dutyCycle - public ModulatedIrSequence(IrSequence irSequence, Double frequency)
irSequence - irSequence to be copied fromfrequency - public ModulatedIrSequence(ModulatedIrSequence src, int start, int length) throws InvalidArgumentException
src - start - length - InvalidArgumentExceptionpublic ModulatedIrSequence(double[] durations,
Double frequency,
Double dutyCycle)
throws OddSequenceLengthException
durations - frequency - dutyCycle - OddSequenceLengthExceptionpublic ModulatedIrSequence(double[] durations,
Double frequency)
throws OddSequenceLengthException
durations - frequency - OddSequenceLengthException - if duration has odd length.public ModulatedIrSequence(int[] durations,
Double frequency,
Double dutyCycle)
throws OddSequenceLengthException
durations - frequency - dutyCycle - OddSequenceLengthException - if duration has odd length.public ModulatedIrSequence(int[] durations,
Double frequency)
throws OddSequenceLengthException
durations - frequency - OddSequenceLengthException - if duration has odd length.public static ModulatedIrSequence concatenate(Collection<IrSequence> sequences, double frequency, double dutyCycle)
public static ModulatedIrSequence concatenate(ModulatedIrSequence[] seqs)
seqs - One or more ModulatedIrSequencespublic static double getFrequencyWithDefault(Double frequency)
public static boolean isValidDutyCycle(Double dutyCycle)
dutyCycle - number to be checked. null is allowed.public static ModulatedIrSequence demodulate(IrSequence irSequence, double threshold)
irSequence - input signalthreshold - Gaps less or equal to this quantity are squashed into a modulated flash.public static ModulatedIrSequence demodulate(IrSequence irSequence)
irSequence - input signal, modulatedpublic static Double frequencyAverage(Iterable<ModulatedIrSequence> seqs)
public Double getFrequency()
public double getFrequencyWithDefault()
public Double getDutyCycle()
public double getDutyCycleWithDefault()
public String toStringFrequency(boolean alternatingSigns)
public String toStringFrequency()
public IrSignal toIrSignal()
public ModulatedIrSequence setFrequency(Double newFrequency)
public boolean approximatelyEquals(ModulatedIrSequence irSequence, double absoluteTolerance, double relativeTolerance, double frequencyTolerance, double dutyCycleTolerance)
irSequence - to be compared against this.absoluteTolerance - tolerance threshold in microseconds.relativeTolerance - relative threshold, between 0 and 1.frequencyTolerance - tolerance (absolute) for frequency in Hz.dutyCycleTolerance - tolerance (absolute) for duty cycle (< 1).public boolean approximatelyEquals(ModulatedIrSequence irSequence, double absoluteTolerance, double relativeTolerance, double frequencyTolerance)
irSequence - to be compared against this.absoluteTolerance - tolerance threshold in microseconds.relativeTolerance - relative threshold, between 0 and 1.frequencyTolerance - public boolean approximatelyEquals(ModulatedIrSequence irSequence, double absoluteTolerance, double relativeTolerance)
irSequence - to be compared against this.absoluteTolerance - tolerance threshold in microseconds.relativeTolerance - relative threshold, between 0 and 1.public boolean approximatelyEquals(ModulatedIrSequence irSequence)
irSequence - to be compared against this.public boolean isZeroModulated()
public ModulatedIrSequence addNoise(double max)
IrSequenceaddNoise in class IrSequencemax - max amount to add/subtract, in microseconds.public ModulatedIrSequence append(double delay) throws InvalidArgumentException
append in class IrSequencedelay - microseconds of silence to be appended to the IrSequence.InvalidArgumentExceptionpublic ModulatedIrSequence append(ModulatedIrSequence tail) throws InvalidArgumentException
InvalidArgumentExceptionpublic List<IrSequence> chop(double amount)
IrSequencechop in class IrSequenceamount - minimal gap in microseconds to cause a cut.public ModulatedIrSequence clone()
IrSequenceclone in class IrSequencepublic IrSequence modulate()
Copyright © 2019. All rights reserved.