Revision 1 -
(download)
(annotate)
Mon Feb 10 17:09:07 2014 UTC
(10 years, 6 months ago)
by agomez File size: 2302 byte(s)
Initial version based on Gadget 2.2.00
#ifndef sibyacousticonstep_h
#define sibyacousticonstep_h
#include "sionstep.h"
/**
* \class SIByAcousticOnStep
* \brief This is the class used to calculate a likelihood score by fitting the model population to acoustic based survey index data
*/
class SIByAcousticOnStep : public SIOnStep {
public:
/**
* \brief This is the SIByAcousticOnStep constructor
* \param infile is the CommentStream to read the survey index data from
* \param areas is the IntMatrix of areas that the survey index can take place on
* \param areaindex is the CharPtrVector of area identifier text strings
* \param fleetindex is the CharPtrVector of fleet identifier text strings
* \param TimeInfo is the TimeClass for the current model
* \param datafilename is the name of the file containing the survey index data
* \param givenname is the name of the SIByAcousticOnStep likelihood component
* \param bio is the flag to denote whether the index should be based on the biomass or not
*/
SIByAcousticOnStep(CommentStream& infile, const IntMatrix& areas,
const CharPtrVector& areaindex, const CharPtrVector& fleetindex,
const TimeClass* const TimeInfo, const char* datafilename, const char* givenname, int bio);
/**
* \brief This is the default SIByAcousticOnStep destructor
*/
virtual ~SIByAcousticOnStep();
/**
* \brief This function will sum the survey index by acoustic data
* \param TimeInfo is the TimeClass for the current model
*/
virtual void Sum(const TimeClass* const TimeInfo);
/**
* \brief This will select the fleets and stocks required to calculate the survey index likelihood score
* \param Fleets is the FleetPtrVector of all the available fleets
* \param Stocks is the StockPtrVector of all the available stocks
*/
virtual void setFleetsAndStocks(FleetPtrVector& Fleets, StockPtrVector& Stocks);
/**
* \brief This function will print the SIByAcousticOnStep information
* \param outfile is the ofstream that all the model information gets sent to
*/
virtual void Print(ofstream& outfile) const { aggregator->Print(outfile); };
protected:
/**
* \brief This is the StockAggregator used to collect information about the relevant stocks for the survey index data
*/
StockAggregator* aggregator;
};
#endif