FunctionFactory.cxx
Go to the documentation of this file.
00001 
00012 // for truncation warning in debug mode
00013 #ifdef _MSC_VER
00014 #include "msdevstudio/MSconfig.h"
00015 #endif
00016 
00017 #include "functions/FunctionFactory.h"
00018 
00019 // List of default functions
00020 #include "functions/BrokenPowerLaw.h"
00021 #include "functions/ConstantF.h"
00022 #include "functions/Erfc.h"
00023 #include "functions/Exponential.h"
00024 #include "functions/Gaussian.h"
00025 #include "functions/Landau.h"
00026 #include "functions/Linear.h"
00027 #include "functions/LinearSumFunction.h"
00028 #include "functions/LogNormal.h"
00029 #include "functions/LogParabola.h"
00030 #include "functions/Novosibirsk.h"
00031 #include "functions/PowerLaw.h"
00032 #include "functions/Quadratic.h"
00033 #include "functions/Quadratic2.h"
00034 #include "functions/Chi2Dist.h"
00035 
00036 using namespace hippodraw;
00037 
00038 FunctionFactory * FunctionFactory::s_instance = 0;
00039 
00040 FunctionFactory::FunctionFactory ()
00041 {
00042 }
00043 
00044 FunctionFactory * FunctionFactory::instance ()
00045 {
00046   if ( s_instance == 0 ) {
00047     s_instance = new FunctionFactory ();
00048     s_instance->initialize ();
00049   }
00050   return s_instance;
00051 }
00052 
00053 void FunctionFactory::initialize ()
00054 {
00055   add ( new Gaussian () );
00056   add ( new Erfc () );
00057   add ( new Exponential () );
00058   add ( new Landau () );
00059   add ( new Linear () );
00060   add ( new LinearSumFunction () );
00061   add ( new LogNormal () );
00062   add ( new LogParabola () );
00063   add ( new Novosibirsk () );
00064   add ( new PowerLaw () );
00065   add ( new BrokenPowerLaw () );
00066   add ( new Quadratic () );
00067   add ( new Quadratic2 () );
00068   add ( new ConstantF () );
00069   add ( new Chi2Dist () );
00070 }

Generated for HippoDraw Class Library by doxygen