main.cpp 1.46 KB
#include "sphere.h"
#include "rts/optics/material.h"
#include <vector>
//#include "rts/complex.h"

#include "nearfield.h"
//nearfieldStruct* NF;

#include "microscope.h"
microscopeStruct* SCOPE;

#include "fieldslice.h"

#include "fileout.h"
#include "options.h"
#include "montecarlo.h"
#include "rts/math/point.h"
#include "rts/math/spherical_bessel.h"
#include "rts/math/matrix.h"
#include "rts/math/quaternion.h"

#include "rts/envi/envi.h"

#include "warnings.h"

#include "planewave.h"

//user interface
#include "qtMainDialog.h"
bool gui = false;

fileoutStruct gFileOut;
bool verbose = false;
using namespace std;

int cbessjyva(double v,complex<double> z,double &vm,complex<double>*cjv,
    complex<double>*cyv,complex<double>*cjvp,complex<double>*cyvp);

int main(int argc, char *argv[])
{

    //benchtest planewave class
    rts::vector<ptype, 3> k(1, 0, 0);
    rts::vector<ptype, 3> E(2, 2, 0);
    planewave<ptype> P(k, E);

    std::cout<<P<<std::endl;

    exit(1);

	SCOPE = new microscopeStruct();

    LoadParameters(argc, argv);

	//initialize GPU memory for fields
	SCOPE->init();

    if(gui)
    {
        QApplication app(argc, argv);
        qtMainDialog bsDialog;

        //populate the user interface with the default and command-line values
        bsDialog.populateUi();
        bsDialog.show();
        return app.exec();
    }
    else
    {

        gFileOut.Save(SCOPE);

        if(verbose)
            OutputOptions();

        SCOPE->destroy();
    }




}