Package org.vast.swe.fast
Class DataBlockProcessor
java.lang.Object
org.vast.swe.fast.DataBlockProcessor
- All Implemented Interfaces:
 DataComponentVisitor
- Direct Known Subclasses:
 AbstractDataParser,AbstractDataWriter
 Base class for all data block level processors.
 The processor tree is pre-configured so that the processing can occur very
 fast on many data blocks matching the same components structure.
 
- Since:
 - Dec 7, 2016
 
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic interfacestatic interfacestatic classstatic classstatic interfaceclassstatic class - 
Field Summary
FieldsModifier and TypeFieldDescriptionprotected DataComponentprotected booleanprotected IComponentFilterprotected booleanprotected ArrayDeque<DataBlockProcessor.AtomProcessor>protected booleanprotected DataBlockProcessor.AtomProcessor - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidcheckEnabled(DataComponent comp) protected DataBlockProcessor.ArrayProcessorgetArrayProcessor(DataArray array) protected abstract DataBlockProcessor.ArraySizeSuppliergetArraySizeSupplier(String refId) protected abstract DataBlockProcessor.ChoiceProcessorgetChoiceProcessor(DataChoice choice) protected abstract DataBlockProcessor.ImplicitSizeProcessorprotected DataBlockProcessor.AtomProcessorgetRangeProcessor(RangeComponent range) protected DataBlockProcessor.RecordProcessorgetRecordProcessor(DataRecord record) protected DataBlockProcessor.RecordProcessorgetVectorProcessor(Vector vect) protected abstract voidinit()voidvoidsetDataComponents(DataComponent components) protected voidsetEnabled(DataBlockProcessor.AtomProcessor processor) voidvisit(CategoryRange range) voidvisit(CountRange range) voidvoidvisit(DataChoice choice) voidvisit(DataRecord record) voidvisit(GeometryData geom) voidvisit(QuantityRange range) voidvoidprotected voidvisitRange(RangeComponent range)  
- 
Field Details
- 
dataComponents
 - 
filter
 - 
rootProcessor
 - 
processorStack
 - 
enableSubTree
protected boolean enableSubTree - 
processorTreeReady
protected boolean processorTreeReady - 
hasVarSizeArray
protected boolean hasVarSizeArray 
 - 
 - 
Constructor Details
- 
DataBlockProcessor
public DataBlockProcessor() 
 - 
 - 
Method Details
- 
init
- Throws:
 IOException
 - 
addToProcessorTree
 - 
setEnabled
 - 
checkEnabled
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
visitRange
 - 
getRangeProcessor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
getRecordProcessor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
getVectorProcessor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
getChoiceProcessor
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
getArrayProcessor
 - 
getImplicitSizeProcessor
protected abstract DataBlockProcessor.ImplicitSizeProcessor getImplicitSizeProcessor(DataArray array)  - 
getArraySizeSupplier
 - 
visit
- Specified by:
 visitin interfaceDataComponentVisitor
 - 
setDataComponents
 - 
getDataComponents
 - 
setDataComponentFilter
 
 -