#include "JikanDepths.h"
#include "Jikan.h"

#include <omp.h>

using namespace std;

extern "C"
{
    extern class Jikan Timer;

    void TimerStart(const char* name, const int& mode)
    {
        string str_name = name;

        Timer.JikanStart(str_name, mode);
    }

    void TimerEnd(const char* name)
    {
        string str_name = name;

        Timer.JikanEnd(str_name);
    }

    void WriteOutput()
    {    
        #ifdef INCLUDE_OPEN_MP
        #pragma omp master
        {
        #endif
            bool ifWrite = Timer.ifWriteProc();
            if(ifWrite == true)
                Timer.GenerateOutputData();
        #ifdef INCLUDE_OPEN_MP
        }
        #endif
    }
}