FreeHEP API
Version 3.0

hep.aida
Class IAnalysisFactory

java.lang.Object
  |
  +--hep.aida.IAnalysisFactory

public abstract class IAnalysisFactory
extends Object

The "master" factory from which other factories are obtained. Typically accessed by:

   IAnalysisFactory af =(IAnalysisFactory) ServiceManager.create("hep.aida.IAnalysisFactory");
 
In C++ IAnalysisFactory* af = AIDA_createAnalysisFactory();

Author:
The AIDA team (http://aida.freehep.org/)

Constructor Summary
IAnalysisFactory()
           
 
Method Summary
static IAnalysisFactory create()
          Create an instance of an IAnalysisFactory.
abstract  IDataPointSetFactory createDataPointSetFactory(ITree tree)
          Create an IDataPointSetFactory.
abstract  IFitFactory createFitFactory()
          Create an IFitFactory.
abstract  IFunctionFactory createFunctionFactory(ITree tree)
          Create an IFunctionFactory.
abstract  IHistogramFactory createHistogramFactory(ITree tree)
          Create an IHistogramFactory.
abstract  IPlotterFactory createPlotterFactory()
          Create an IPlotterFactory.
abstract  ITreeFactory createTreeFactory()
          Create an ITreeFactory.
abstract  ITupleFactory createTupleFactory(ITree tree)
          Create an ITupleFactory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IAnalysisFactory

public IAnalysisFactory()
Method Detail

create

public static IAnalysisFactory create()
Create an instance of an IAnalysisFactory. This method will attempt to locate and load an IAnalysisFactory at runtime. If one cannot be found an error message will be printed, and a RuntimeException thrown. The method first checks the System property hep.aida.IAnalysisFactory. If this is not found it uses the services API to find an IAnalysisFactory service in a jar file on the CLASSPATH.

Returns:
The IAnalysisFactory
Throws:
RuntimeException - If a concrete IAnalysisFactory implementation cannot be located

createTreeFactory

public abstract ITreeFactory createTreeFactory()
Create an ITreeFactory.

Returns:
The ITreeFactory.

createHistogramFactory

public abstract IHistogramFactory createHistogramFactory(ITree tree)
                                                  throws IllegalArgumentException
Create an IHistogramFactory.

Parameters:
tree - The ITree which created histograms will be associated to.
Returns:
The IHistogramFactory.
Throws:
IllegalArgumentException - if tree is null.

createDataPointSetFactory

public abstract IDataPointSetFactory createDataPointSetFactory(ITree tree)
                                                        throws IllegalArgumentException
Create an IDataPointSetFactory.

Parameters:
tree - The ITree which created IDataPointSet will be associated to.
Returns:
The IDataPointSetFactory.
Throws:
IllegalArgumentException - if tree is null.

createTupleFactory

public abstract ITupleFactory createTupleFactory(ITree tree)
                                          throws IllegalArgumentException
Create an ITupleFactory.

Parameters:
tree - The ITree which created tuples will be associated to.
Returns:
The ITupleFactory.
Throws:
IllegalArgumentException - if tree is null.

createFunctionFactory

public abstract IFunctionFactory createFunctionFactory(ITree tree)
                                                throws IllegalArgumentException
Create an IFunctionFactory.

Parameters:
tree - The ITree which created functions will be associated to.
Returns:
The IFunctionFactory.
Throws:
IllegalArgumentException - if tree is null.

createPlotterFactory

public abstract IPlotterFactory createPlotterFactory()
Create an IPlotterFactory. Due to the fact that the plotter factory may activate a GUI tookit, the process arguments (passed to the main function) could be passed to the plotter factory. Most of the GUI toolkit ask for them (Motif, gtk, Qt, FLTK).


createFitFactory

public abstract IFitFactory createFitFactory()
Create an IFitFactory.

Returns:
The IFitFactory.

FreeHEP API
Version 3.0

Copyright © 2000-2002 AIDA Team, All Rights Reserved.