uk.ac.starlink.ttools.plot2.data
Class SimpleDataStoreFactory

java.lang.Object
  extended by uk.ac.starlink.ttools.plot2.data.SimpleDataStoreFactory
All Implemented Interfaces:
DataStore, DataStoreFactory

public class SimpleDataStoreFactory
extends Object
implements DataStoreFactory, DataStore

DataStoreFactory implementation that does no caching. It reads the data as required every time. This has low memory requirements. It may also be faster to use for one-pass plots, but probably not if the same column is used for multiple purposes.

Since:
11 Feb 2013
Author:
Mark Taylor

Constructor Summary
SimpleDataStoreFactory()
           
 
Method Summary
 TupleSequence getTupleSequence(DataSpec spec)
          Returns the data described by a given DataSpec as a sequence of tuples.
static DomainMapper[] getUserCoordMappers(DataSpec dataSpec, int icoord)
          Utility method to work out the domain mappers for a given coordinate of a DataSpec.
 boolean hasData(DataSpec spec)
          Indicates whether this store has the data described by a given DataSpec.
 DataStore readDataStore(DataSpec[] specs, DataStore prevStore)
          Executes instantly and returns this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleDataStoreFactory

public SimpleDataStoreFactory()
Method Detail

hasData

public boolean hasData(DataSpec spec)
Description copied from interface: DataStore
Indicates whether this store has the data described by a given DataSpec.

Specified by:
hasData in interface DataStore
Parameters:
spec - plot data specification object

readDataStore

public DataStore readDataStore(DataSpec[] specs,
                               DataStore prevStore)
Executes instantly and returns this object.

Specified by:
readDataStore in interface DataStoreFactory
Parameters:
specs - data specifications; some elements may be null
prevStore - previously obtained DataStore, or null
Returns:
new data store

getTupleSequence

public TupleSequence getTupleSequence(DataSpec spec)
Description copied from interface: DataStore
Returns the data described by a given DataSpec as a sequence of tuples. Must only be called if DataStore.hasData(uk.ac.starlink.ttools.plot2.data.DataSpec) returns true for the given DataSpec; if not, behaviour is undefined.

Specified by:
getTupleSequence in interface DataStore
Parameters:
spec - plot data specification object
Returns:
sequence of values which can be used to perform a plot

getUserCoordMappers

public static DomainMapper[] getUserCoordMappers(DataSpec dataSpec,
                                                 int icoord)
Utility method to work out the domain mappers for a given coordinate of a DataSpec. For the requested coord, it returns a mapper array with elements filled, in with any mapper known for the given input coordinates that has the sub-type appropriate for that coordinate.

Parameters:
dataSpec - data specification object
icoord - index of coordinate in dataSpec
Returns:
mapper array for decoding values of one coordinate of a data spec


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.