[mareframe] View of /trunk/gadget/agebandmatrixratioptrvector.h
View of /trunk/gadget/agebandmatrixratioptrvector.h
Parent Directory
| Revision Log
Revision 1 -
( download)
( annotate)
Mon Feb 10 17:09:07 2014 UTC
(10 years, 6 months ago)
by agomez
File size: 1683 byte(s)
Initial version based on Gadget 2.2.00
#ifndef agebandmatrixratioptrvector_h
#define agebandmatrixratioptrvector_h
#include "popratio.h"
#include "popratiomatrix.h"
#include "popratioindexvector.h"
#include "areatime.h"
#include "agebandmatrix.h"
#include "agebandmatrixptrvector.h"
#include "agebandmatrixratio.h"
#include "charptrvector.h"
#include "gadget.h"
class Maturity;
class AgeBandMatrixRatioPtrVector {
public:
AgeBandMatrixRatioPtrVector() { size = 0; v = 0; };
AgeBandMatrixRatioPtrVector(int size);
AgeBandMatrixRatioPtrVector(int size1, int MinAge, const IntVector& minl, const IntVector& size2);
~AgeBandMatrixRatioPtrVector();
void resize(int add, AgeBandMatrixRatio* matr);
void resize(int add, int minage, const IntVector& minl, const IntVector& size);
void addTag(AgeBandMatrixPtrVector* initial, const AgeBandMatrixPtrVector& Alkeys, const char* tagname, double tagloss);
void addTag(const char* tagname);
void deleteTag(const char* tagname);
int Size() const { return size; };
int getTagID(const char* tagname);
const char* getTagName(int id) const { return tagID[id]; };
void Migrate(const DoubleMatrix& MI, const AgeBandMatrixPtrVector& Total);
int numTagExperiments() const { return tagID.Size(); };
const DoubleVector& getTagLoss() const { return tagLoss; };
AgeBandMatrixRatio& operator [] (int pos) { return *v[pos]; };
const AgeBandMatrixRatio& operator [] (int pos) const { return *v[pos]; };
void Add(const AgeBandMatrixRatioPtrVector& Addition, int area,
const ConversionIndex &CI, double ratio = 1.0);
protected:
void addTagName(const char* name);
int size;
AgeBandMatrixRatio** v;
CharPtrVector tagID;
DoubleVector tagLoss;
};
#endif
|