Revision 1 -
(download)
(annotate)
Mon Feb 10 17:09:07 2014 UTC
(10 years, 5 months ago)
by agomez File size: 1638 byte(s)
Initial version based on Gadget 2.2.00
#ifndef preyoveraggregator_h
#define preyoveraggregator_h
#include "agebandmatrix.h"
#include "intmatrix.h"
#include "preyptrvector.h"
/**
* \class PreyOverAggregator
* \brief This is the class used to aggregate the calculated overconsumption of preys
*/
class PreyOverAggregator {
public:
/**
* \brief This is the PreyOverAggregator constructor
* \param preys is the PreyPtrVector of the preys that will be aggregated
* \param Areas is the IntMatrix of areas that the overconsumption can occur on
* \param LgrpDiv is the LengthGroupDivision for the preys
*/
PreyOverAggregator(const PreyPtrVector& preys,
const IntMatrix& Areas, const LengthGroupDivision* const LgrpDiv);
/**
* \brief This is the default PreyOverAggregator destructor
*/
~PreyOverAggregator() {};
/**
* \brief This will reset the prey overconsumption information
*/
void Reset();
/**
* \brief This will aggregate the prey overconsumption that has taken place
*/
void Sum();
/**
* \brief This will return the calculated overconsumption
* \return total, the DoubleMatrix of overconsumption
*/
const DoubleMatrix& getSum() const { return total; };
protected:
/**
* \brief This is the PreyPtrVector of preys that will be aggregated
*/
PreyPtrVector preys;
/**
* \brief This is the IntMatrix of length groups of the preys
*/
IntMatrix preyConv;
/**
* \brief This will aggregate the predator overconsumption that has taken place
*/
IntMatrix areas;
/**
* \brief This is the DoubleMatrix of the overconsumption that has taken place
*/
DoubleMatrix total;
};
#endif