|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
T - the type of sensor connection that the implementing class can handlepublic interface ITrafoQueryProcessor<T extends IQueryConnection<T>>
This interface is meant to be implemented by components that can communicate with real world sensors to find out the current sensor values, and from these values calculate spatial transformations that can be used to express a connection between frames.
The implementation must be thread safe and must react to thread interrupts.
Thread.interrupted(),
InterruptedException,
IQueryConnection| Method Summary | |
|---|---|
Future<Map<QueryType,List<ITransformation>>> |
processQuery(Collection<QueryType> queryTypes,
List<T> connections,
Object queryContext)
Query the sensors asynchronously, and for each given connection and query type return a corresponding ITransformation. |
| Method Detail |
|---|
Future<Map<QueryType,List<ITransformation>>> processQuery(Collection<QueryType> queryTypes,
List<T> connections,
Object queryContext)
ITransformation.
This method is designed so that it can query multiple connections using multiple query types with one call, so that the implementation can provide sensor values from the same time instant (for example: field bus cycle).
Implementations can support multiple query types, so that one can distinguish between theoretical and real
measured sensor values, for example. Furthermore the implementation shall be able to handle null as
QueryType, and process the query using an implementation specific default behavior.
This method must be thread safe and should not block execution, i.e. it should return immediately.
queryTypes - a collection of QueryTypes to execute. The collection may contain null values.
For each distinct value, a query is executed, and a corresponding result will be returned in a map.
If the implementation cannot compute a ITransformation for the given query type, it shall
throw a suitable exception.connections - a list of IQueryConnection for which the sensor(s) should be evaluated. Each list entry will
be mapped to a corresponding entry in the returned list.queryContext - an arbitrary object that can be used by the query processor. Can be null.
Future resulting in a map, containing a list of ITransformation for each distinct value
of the given query types.
The lists each contain exactly the same number of entries as the connections parameter.
Each entry is non-null and corresponds to the entry of the connection parameter with
the same list index.
The list and its entries must be safe for the caller to use in any way, so the result should be immutable
or otherwise no longer be used by the query processor.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||