Log In | Get Help   
Home My Page Projects Code Snippets Project Openings Mareframe
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files
[mareframe] View of /trunk/gadget/stockstdprinter.h
[mareframe] / trunk / gadget / stockstdprinter.h Repository:
ViewVC logotype

View of /trunk/gadget/stockstdprinter.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (download) (annotate)
Mon Feb 10 17:09:07 2014 UTC (10 years, 4 months ago) by agomez
File size: 2709 byte(s)
Initial version based on Gadget 2.2.00
#ifndef stockstdprinter_h
#define stockstdprinter_h

#include "printer.h"
#include "stockaggregator.h"
#include "stockpreyaggregator.h"
#include "popstatistics.h"

/**
 * \class StockStdPrinter
 * \brief This is the class used to print 'standard' information about a stock
 */
class StockStdPrinter : public Printer {
public:
  /**
   * \brief This is the default StockStdPrinter constructor
   * \param infile is the CommentStream to read the printer parameters from
   * \param TimeInfo is the TimeClass for the current model
   */
  StockStdPrinter(CommentStream& infile, const TimeClass* const TimeInfo);
  /**
   * \brief This is the default StockStdPrinter destructor
   */
  virtual ~StockStdPrinter();
  /**
   * \brief This will select the stocks required for the printer class to print the requested information
   * \param stockvec is the StockPtrVector of all the available stocks
   * \param Area is the AreaClass for the current model
   */
  virtual void setStock(StockPtrVector& stockvec, const AreaClass* const Area);
  /**
   * \brief This will print the requested information for the printer class to the ofstream specified
   * \param TimeInfo is the TimeClass for the current model
   * \param printtime is the flag to denote when the printing is taking place
   */
  virtual void Print(const TimeClass* const TimeInfo, int printtime);
protected:
  /**
   * \brief This is the name of the stock
   */
  char* stockname;
  /**
   * \brief This is the LengthGroupDivision of the stock
   */
  LengthGroupDivision* LgrpDiv;
  /**
   * \brief This is the IntVector used to store aggregated area information
   */
  IntVector outerareas;
  /**
   * \brief This is the flag to denote whether the stock is a prey or not
   */
  int isaprey;
  /**
   * \brief This is the minimum age of the stock
   */
  int minage;
  /**
   * \brief This is the scaling factor used to scale the size of the stock
   */
  double scale;
  /**
   * \brief This is the StockAggregator used to collect information about the stock
   */
  StockAggregator* saggregator;
  /**
   * \brief This is the StockPreyAggregator used to collect information about the stock prey
   */
  StockPreyAggregator* paggregator;
  /**
   * \brief This is the PopStatistics used to calculate the statistics of the population
   */
  PopStatistics ps;
  /**
   * \brief This is the AgeBandMatrixPtrVector used to temporarily store the information returned from the stock aggregatation function
   */
  const AgeBandMatrixPtrVector* salptr;
  /**
   * \brief This is the AgeBandMatrixPtrVector used to temporarily store the information returned from the prey aggregatation function
   */
  const AgeBandMatrixPtrVector* palptr;
};

#endif

root@forge.cesga.es
ViewVC Help
Powered by ViewVC 1.0.0  

Powered By FusionForge