/*******************************************************************************
* Gen.h TMS State Table Generator
* T.Barnaby, BEAM Ltd, 2007-03-15
*******************************************************************************
*/
#ifndef Gen_h
#define Gen_h 1
#include <BError.h>
#include <BFile.h>
#include <BNameValue.h>
#include <TmsLib.h>
#include <TmsCycleParam.h>
typedef BNameValue<BString> PNameValue;
class PNameValueList : public BNameValueList<BString> {
public:
BString getValue(BString name);
void setValue(BString name, BString value);
};
/// State/Phase table generation class
class Gen {
public:
Gen();
~Gen();
BList<BString> getTypes();
BError init(PNameValueList& params); ///< Initialises the generation with a set of parameters
BError generate(BString cycleType); ///< Runs the generator
protected:
BError genBeam1();
BError genBeam2();
BError genBeam3();