///////////////////////////////////////////////////////////////////////////
//
// Copyright 2010
//
// This file is part of starlight.
//
// starlight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// starlight is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with starlight. If not, see .
//
///////////////////////////////////////////////////////////////////////////
//
// File and Version Information:
// $Rev:: 102 $: revision of last commit
// $Author:: odjuvsla $: author of last commit
// $Date:: 2012-10-22 23:25:54 +0200 #$: date of last commit
//
// Description:
//
//
//
///////////////////////////////////////////////////////////////////////////
#ifndef STARLIGHTSTANDALONE_H
#define STARLIGHTSTANDALONE_H
#include
class upcEvent;
class starlight;
class inputParameters;
class starlightStandalone {
public:
starlightStandalone();
~starlightStandalone();
bool init(); ///< reads configuration file and initializes startlight
bool run (); ///< creates output file and runs starlight
const std::string& configFileName () const { return _configFileName; } ///< returns path to config file
const std::string& eventDataFileName() const { return _eventDataFileName; } ///< returns path to output file
void setConfigFileName (const std::string& configFileName ) { _configFileName = configFileName; } ///< sets path to config file
void setEventDataFileName(const std::string& eventDataFileName) { _eventDataFileName = eventDataFileName; } ///< sets path to output file
void boostEvent(upcEvent &e); ///< Boost event from beam CMS to lab system
private:
std::string _configFileName; ///< path to configuration file
std::string _eventDataFileName; ///< path to output file
starlight* _starlight; ///< pointer to starlight instance
inputParameters* _inputParameters; ///< pointer to parameter instance
unsigned int _nmbEventsTot; ///< total number of events to generate (taken from configuration file)
unsigned int _nmbEventsPerFile; ///< maximum number of events written to a single file (not yet implemented)
};
#endif // STARLIGHTSTANDALONE_H