# Class SkyConeMatch2

java.lang.Object
uk.ac.starlink.ttools.task.ConsumerTask
uk.ac.starlink.ttools.task.SingleMapperTask
uk.ac.starlink.ttools.cone.SkyConeMatch2

All Implemented Interfaces:
  `uk.ac.starlink.task.Task`

Direct Known Subclasses:
  `MultiCone, SqlCone`

public abstract class SkyConeMatch2 extends SingleMapperTask
Crossmatcher which works by performing one cone-search type query for each row of an input table on an external service of some kind. This is not prima facie a very efficient way of doing a cross match, but if the external service represents a table which is too large or otherwise unfeasible to access as one term in a normal cone search it's about the only way to do it.

Since:
  9 Aug 2007
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`SkyConeMatch2(String purpose, Coner coner, int maxParallel)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`TableProducer`
`createProducer(uk.ac.starlink.task.Environment env)`
Returns an object which can produce the effective output table which will be consumed by this task.
`uk.ac.starlink.task.Parameter<ConeErrorPolicy>`
`getConeErrorPolicyParameter()`
Returns the parameter used to acquire the error policy.
`Coner`
`getConer()`
Returns the coner used by this task.
`uk.ac.starlink.task.Parameter<String>`
`getDecParameter()`
Returns the parameter used to acquire declination in degrees.
`uk.ac.starlink.task.Parameter<ConeFindMode>`
`getFindModeParameter()`
Returns the parameter used to acquire the find mode.
`uk.ac.starlink.task.Parameter<Integer>`
`getParallelParameter()`
Returns the parameter used to acquire the parallelism level.
`uk.ac.starlink.task.Parameter<String>`
`getRadiusDegreeParameter()`
Returns the parameter used to acquire radius expression in degrees.
`uk.ac.starlink.task.Parameter<String>`
`getRaParameter()`
Returns the parameter used to acquire RA expression in degrees.
`uk.ac.starlink.task.Parameter<Boolean>`
`getUseCoverageParameter()`
Returns the parameter used to acquire the coverage usage flag.

### Methods inherited from class SingleMapperTask

`createInputProducer, getInputFilterParameter, getInputTableParameter`

### Methods inherited from class ConsumerTask

`createExecutable, createProducer, getIdentity, getOutputMode, getParameterList, getParameters, getPurpose`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### SkyConeMatch2

public SkyConeMatch2(String purpose, Coner coner, int maxParallel)
Constructor.

Parameters:
  `purpose` - one-line description of the purpose of the task
  `coner` - object which provides the sky cone search service
  `maxParallel` - the largest number of parallel threads which will be permitted for multi-threaded operation; 1 means single-threaded only, and <=0 means no limit - use with care!

## Method Details

### createProducer

public TableProducer createProducer(uk.ac.starlink.task.Environment env) throws uk.ac.starlink.task.TaskException
Description copied from class: `ConsumerTask`
Returns an object which can produce the effective output table which will be consumed by this task. The table produced by the resulting producer can be fed to the `ConsumerTask.getIdentity(StarTable)` method.

Specified by:
  `createProducer` in class `ConsumerTask`
Parameters:
  `env` - execution environment
Returns:
  table producer
Throws:
  `uk.ac.starlink.task.TaskException`

### getConer

public Coner getConer()
Returns the coner used by this task.

Returns:
  coner

### getRaParameter

public uk.ac.starlink.task.Parameter<String> getRaParameter()
Returns the parameter used to acquire RA expression in degrees.

Returns:
  right ascension parameter

### getDecParameter

public uk.ac.starlink.task.Parameter<String> getDecParameter()
Returns the parameter used to acquire declination in degrees.

Returns:
  declination parameter

### getRadiusDegreeParameter

public uk.ac.starlink.task.Parameter<String> getRadiusDegreeParameter()
Returns the parameter used to acquire radius expression in degrees.

Returns:
  radius parameter

### getConeErrorPolicyParameter

public uk.ac.starlink.task.Parameter<ConeErrorPolicy> getConeErrorPolicyParameter()
Returns the parameter used to acquire the error policy.

Returns:
  error policy parameter

### getFindModeParameter

public uk.ac.starlink.task.Parameter<ConeFindMode> getFindModeParameter()
Returns the parameter used to acquire the find mode.

Returns:
  find mode parameter

### getUseCoverageParameter

public uk.ac.starlink.task.Parameter<Boolean> getUseCoverageParameter()
Returns the parameter used to acquire the coverage usage flag. return use coverage parameter

### getParallelParameter

public uk.ac.starlink.task.Parameter<Integer> getParallelParameter()
Returns the parameter used to acquire the parallelism level.

Returns:
  parallelism level parameter