Package org.harctoolbox.irp
Class BareIrStream
java.lang.Object
org.harctoolbox.irp.IrpObject
org.harctoolbox.irp.BareIrStream
- All Implemented Interfaces:
Serializable,IrStreamItem,XmlExport
This class implements Irstream as of Chapter 6.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionBareIrStream(List<IrStreamItem> list) BareIrStream(IrStreamItem irStreamItem) -
Method Summary
Modifier and TypeMethodDescriptionallDurationsInMicros(GeneralSpec generalSpec, NameEngine nameEngine) Delivers a set of all the contained durations in microseconds.voidconcatenate(BareIrStream bareIrStream) booleanconstant(NameEngine nameEngine) voidcreateParameterSpecs(ParameterSpecs parameterSpecs) voiddecode(RecognizeData recognizeData, List<BitSpec> bitSpecStack, boolean isLast) endingDurationType(DurationType last, boolean gapFlashBitSpecs) booleanvoidevaluate(RenderData renderData, List<BitSpec> bitSpecStack) extractPass(IrSignal.Pass pass, IrStream.PassExtractorState state) guessParameterLength(String name) Tries to infer the bit-length of the parameter with name as the argument.booleaninthashCode()booleanhasVariation(IrSignal.Pass pass) booleanbooleaninterleavingOk(DurationType last, boolean gapFlashBitSpecs) booleaninterleavingOk(DurationType toCheck, DurationType last, boolean gapFlashBitSpecs) booleanisEmpty()booleanisEmpty(NameEngine nameEngine) microSeconds(GeneralSpec generalSpec, NameEngine nameEngine) booleanComputes the number of encoded bits, which may differ from the number of payload bits, in the case of redundancy.Upper limit of the number of (interleaving) durations in the rendered signal.intpropertiesMap(GeneralSpec generalSpec, NameEngine nameEngine) voidrender(RenderData renderData, List<BitSpec> bitSpecs) startingDuratingType(DurationType last, boolean gapFlashBitSpecs) booleansubstituteConstantVariables(Map<String, Long> constantVariables) Returns an IrStreamItem of the same type with all occurrences of the variables in the dictionary replaced by their values in the dictionary.toIrpString(int radix) Returns a computed IRP (-segment) string representation of current IrpObject.topLevelPropertiesMap(GeneralSpec generalSpec, NameEngine nameEngine, int bitSpecLength) intweight()Returns a (somewhat arbitrary) measure of the complexity of the object.Methods inherited from class org.harctoolbox.irp.IrpObject
getParseTree, prerender, propertiesMap, toDocument, toIrpString, toString, toString, toStringTree, toStringTree, toTreeViewer, toTreeViewer, toTreeViewer, updateStateWhenEntering, updateStateWhenExitingMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.harctoolbox.irp.IrStreamItem
propertiesMap, updateStateWhenEntering, updateStateWhenExitingMethods inherited from interface org.harctoolbox.xml.XmlExport
toDocument
-
Constructor Details
-
BareIrStream
-
BareIrStream
public BareIrStream() -
BareIrStream
-
BareIrStream
-
BareIrStream
-
-
Method Details
-
equals
-
hashCode
public int hashCode() -
concatenate
-
isEmpty
- Specified by:
isEmptyin interfaceIrStreamItem
-
isEmpty
public boolean isEmpty() -
numberOfInfiniteRepeats
public int numberOfInfiniteRepeats()- Specified by:
numberOfInfiniteRepeatsin interfaceIrStreamItem- Overrides:
numberOfInfiniteRepeatsin classIrpObject
-
startsWithFlash
public boolean startsWithFlash() -
hasVariation
-
hasVariationNonRecursive
public boolean hasVariationNonRecursive() -
toIrpString
Description copied from class:IrpObjectReturns a computed IRP (-segment) string representation of current IrpObject. Numerical parameters, but not durations etc, will be printed using the radix in the argument.- Specified by:
toIrpStringin interfaceIrStreamItem- Specified by:
toIrpStringin classIrpObject- Parameters:
radix- Radix for parameters.- Returns:
- Formatted string.
-
numberOfBitSpecs
- Specified by:
numberOfBitSpecsin interfaceIrStreamItem- Overrides:
numberOfBitSpecsin classIrpObject
-
toElement
-
toElement
-
numberOfBareDurations
- Specified by:
numberOfBareDurationsin interfaceIrStreamItem
-
numberOfBits
Description copied from interface:IrStreamItemComputes the number of encoded bits, which may differ from the number of payload bits, in the case of redundancy.- Specified by:
numberOfBitsin interfaceIrStreamItem- Overrides:
numberOfBitsin classIrpObject- Returns:
-
decode
public void decode(RecognizeData recognizeData, List<BitSpec> bitSpecStack, boolean isLast) throws SignalRecognitionException - Specified by:
decodein interfaceIrStreamItem- Throws:
SignalRecognitionException
-
evaluate
public void evaluate(RenderData renderData, List<BitSpec> bitSpecStack) throws NameUnassignedException - Specified by:
evaluatein interfaceIrStreamItem- Throws:
NameUnassignedException
-
render
- Specified by:
renderin interfaceIrStreamItem- Throws:
NameUnassignedException
-
extractPass
- Specified by:
extractPassin interfaceIrStreamItem
-
nonConstantBitFieldLength
public boolean nonConstantBitFieldLength()- Specified by:
nonConstantBitFieldLengthin interfaceIrStreamItem
-
numberOfDurations
Description copied from interface:IrStreamItemUpper limit of the number of (interleaving) durations in the rendered signal. Only intended to be used on intro/repeat/ending IrStreams.- Specified by:
numberOfDurationsin interfaceIrStreamItem- Returns:
- number of durations (not necessarily interleaving), or null if not possible to determine.
-
getDurations
-
endingDurationType
- Specified by:
endingDurationTypein interfaceIrStreamItem
-
startingDuratingType
- Specified by:
startingDuratingTypein interfaceIrStreamItem
-
interleavingOk
- Specified by:
interleavingOkin interfaceIrStreamItem- Parameters:
last-gapFlashBitSpecs-- Returns:
-
interleavingOk
- Specified by:
interleavingOkin interfaceIrStreamItem
-
weight
public int weight()Description copied from class:IrpObjectReturns a (somewhat arbitrary) measure of the complexity of the object. Can be used for determining if a decode is "simpler" than another decode.- Specified by:
weightin interfaceIrStreamItem- Specified by:
weightin classIrpObject- Returns:
- non-negative integer.
-
hasExtent
public boolean hasExtent()- Specified by:
hasExtentin interfaceIrStreamItem
-
getIrStreamItems
- Returns:
- the irStreamItems
-
assignmentVariables
- Specified by:
assignmentVariablesin interfaceIrStreamItem
-
topLevelPropertiesMap
public Map<String,Object> topLevelPropertiesMap(GeneralSpec generalSpec, NameEngine nameEngine, int bitSpecLength) -
propertiesMap
- Specified by:
propertiesMapin interfaceIrStreamItem
-
microSeconds
- Specified by:
microSecondsin interfaceIrStreamItem
-
guessParameterLength
Description copied from interface:IrStreamItemTries to infer the bit-length of the parameter with name as the argument.- Specified by:
guessParameterLengthin interfaceIrStreamItem- Parameters:
name- Name of parameter sought.- Returns:
- length if success, null if failure.
-
substituteConstantVariables
Description copied from interface:IrStreamItemReturns an IrStreamItem of the same type with all occurrences of the variables in the dictionary replaced by their values in the dictionary. Does not change the containing object. May return the object itself, or share sub-objects with it.- Specified by:
substituteConstantVariablesin interfaceIrStreamItem- Parameters:
constantVariables- Map<String, Long> of variables to replace.- Returns:
- IrStreamItem of the same type.
-
allDurationsInMicros
Description copied from interface:IrStreamItemDelivers a set of all the contained durations in microseconds. Dumb, in that it does not consider consecutive flashes or consecutive gaps. Also, durations that cannot be statically computed may be omitted, as well as duration arising from extents.- Specified by:
allDurationsInMicrosin interfaceIrStreamItem- Parameters:
generalSpec-nameEngine-- Returns:
-
constant
- Specified by:
constantin interfaceIrStreamItem
-
createParameterSpecs
- Specified by:
createParameterSpecsin interfaceIrStreamItem- Overrides:
createParameterSpecsin classIrpObject- Throws:
InvalidNameException
-