#include "OscProbE.h"
#include <iostream>
#include <fstream>
#include <vector>
OscProbE::OscProbE(const char* filename /*= 0*/)
{
    if (filename) this->Init(filename);
}
OscProbE::~OscProbE()
{
}


void OscProbE::Init(const char* filename)
{
    ifstream fstr(filename);
    if (!fstr) {
        cerr << "Can't open \"" << filename << "\"\n";
        return;
    }

    double energy;
    vector<double> pev, pmuv, ptauv, energyv;

    while (fstr >> energy) {
        double Pe, Pmu, Ptau;

        fstr >> Pe;
        fstr >> Pmu;
        fstr >> Ptau;

        pev.push_back(Pe);
        pmuv.push_back(Pmu);
        ptauv.push_back(Ptau);
        energyv.push_back(energy);
    }

    nue.Init(energyv,pev);
    numu.Init(energyv,pmuv);
    nutau.Init(energyv,ptauv);
}
