#include "BasicTemplate.h"
#include <filesystem>
#include "vtkForCenos\topologyToVTK.h"

#include <BRepAlgoAPI_BuilderAlgo.hxx>
#include <Bnd_Box.hxx>
#include <BRepBndLib.hxx>
#include <BRepPrimAPI_MakeSphere.hxx>
#include <BRepPrimAPI_MakeBox.hxx>
#include <BRepAlgoAPI_Cut.hxx>
#include <TopExp_Explorer.hxx>
#include "topology/ShapeAlgorithms.h"


BasicTemplate::BasicTemplate(std::string path): stopper(nullptr)
{
    project_path = path;
    geom_data = std::make_shared<GeometryData>(path);
    index = 0;
}

GeometryData_ BasicTemplate::getGeometryData()
{
   return geom_data;
}

void BasicTemplate::setProgressIndicator(std::shared_ptr<ProgressIndicator> pi)
{
    progress = pi;
}

void BasicTemplate::setStopper(bool* b)
{
    stopper = b;
}

templateType BasicTemplate::getType()
{
    return type;
}

void BasicTemplate::setPhysics(std::vector<Physics> p)
{
    physics = p;
}

std::string BasicTemplate::getName()
{
    return name;
}


void BasicTemplate::setIndex(int i)
{
    index = i;
}