// Generated by using Rcpp::compileAttributes() -> do not edit by hand
// Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

#ifndef RCPP_MACPET_RCPPEXPORTS_H_GEN_
#define RCPP_MACPET_RCPPEXPORTS_H_GEN_

#include <Rcpp.h>

namespace MACPET {

    using namespace Rcpp;

    namespace {
        void validateSignature(const char* sig) {
            Rcpp::Function require = Rcpp::Environment::base_env()["require"];
            require("MACPET", Rcpp::Named("quietly") = true);
            typedef int(*Ptr_validate)(const char*);
            static Ptr_validate p_validate = (Ptr_validate)
                R_GetCCallable("MACPET", "_MACPET_RcppExport_validate");
            if (!p_validate(sig)) {
                throw Rcpp::function_not_exported(
                    "C++ function with signature '" + std::string(sig) + "' not found in MACPET");
            }
        }
    }

    inline SEXP Get_NewPeakSummit_fun_Rcpp(Rcpp::NumericVector const& queryHits, Rcpp::NumericVector const& subjectHits, Rcpp::NumericVector const& PeakSummit, Rcpp::NumericVector const& FDR, int const& Noverlaps, int const& NPeaksMerged) {
        typedef SEXP(*Ptr_Get_NewPeakSummit_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_NewPeakSummit_fun_Rcpp p_Get_NewPeakSummit_fun_Rcpp = NULL;
        if (p_Get_NewPeakSummit_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Get_NewPeakSummit_fun_Rcpp)(Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,int const&,int const&)");
            p_Get_NewPeakSummit_fun_Rcpp = (Ptr_Get_NewPeakSummit_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_NewPeakSummit_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_NewPeakSummit_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(queryHits)), Shield<SEXP>(Rcpp::wrap(subjectHits)), Shield<SEXP>(Rcpp::wrap(PeakSummit)), Shield<SEXP>(Rcpp::wrap(FDR)), Shield<SEXP>(Rcpp::wrap(Noverlaps)), Shield<SEXP>(Rcpp::wrap(NPeaksMerged)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP Get_PETsInfoMat_fun_Rcpp(Rcpp::NumericVector const& VEC_query, Rcpp::NumericVector const& VEC_Type, Rcpp::NumericVector const& VEC_Tag, Rcpp::NumericVector const& VEC_LID, Rcpp::NumericVector const& VEC_PeakSummit, int const& NGlobalInterPETs, int const& NIntTagsloop) {
        typedef SEXP(*Ptr_Get_PETsInfoMat_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_PETsInfoMat_fun_Rcpp p_Get_PETsInfoMat_fun_Rcpp = NULL;
        if (p_Get_PETsInfoMat_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Get_PETsInfoMat_fun_Rcpp)(Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,int const&,int const&)");
            p_Get_PETsInfoMat_fun_Rcpp = (Ptr_Get_PETsInfoMat_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_PETsInfoMat_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_PETsInfoMat_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(VEC_query)), Shield<SEXP>(Rcpp::wrap(VEC_Type)), Shield<SEXP>(Rcpp::wrap(VEC_Tag)), Shield<SEXP>(Rcpp::wrap(VEC_LID)), Shield<SEXP>(Rcpp::wrap(VEC_PeakSummit)), Shield<SEXP>(Rcpp::wrap(NGlobalInterPETs)), Shield<SEXP>(Rcpp::wrap(NIntTagsloop)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP Initiate_InteractionInfMat_fun_Rcpp(Rcpp::NumericMatrix& InteractionInfMat, Rcpp::NumericMatrix& InteractionInfo, int& NPeaksInvolved, int& NInteractions) {
        typedef SEXP(*Ptr_Initiate_InteractionInfMat_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_Initiate_InteractionInfMat_fun_Rcpp p_Initiate_InteractionInfMat_fun_Rcpp = NULL;
        if (p_Initiate_InteractionInfMat_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Initiate_InteractionInfMat_fun_Rcpp)(Rcpp::NumericMatrix&,Rcpp::NumericMatrix&,int&,int&)");
            p_Initiate_InteractionInfMat_fun_Rcpp = (Ptr_Initiate_InteractionInfMat_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Initiate_InteractionInfMat_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Initiate_InteractionInfMat_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(InteractionInfo)), Shield<SEXP>(Rcpp::wrap(NPeaksInvolved)), Shield<SEXP>(Rcpp::wrap(NInteractions)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP Initiate_GenomeMap_fun_Rcpp(int const& NPeaksInvolved_Net, Rcpp::NumericVector const& AdjNode_Net, Rcpp::NumericVector const& PBS_Net, Rcpp::NumericVector const& PeakSummit_Net, int const& Chrom12ID_Net, bool const& Print) {
        typedef SEXP(*Ptr_Initiate_GenomeMap_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Initiate_GenomeMap_fun_Rcpp p_Initiate_GenomeMap_fun_Rcpp = NULL;
        if (p_Initiate_GenomeMap_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Initiate_GenomeMap_fun_Rcpp)(int const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,int const&,bool const&)");
            p_Initiate_GenomeMap_fun_Rcpp = (Ptr_Initiate_GenomeMap_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Initiate_GenomeMap_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Initiate_GenomeMap_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(NPeaksInvolved_Net)), Shield<SEXP>(Rcpp::wrap(AdjNode_Net)), Shield<SEXP>(Rcpp::wrap(PBS_Net)), Shield<SEXP>(Rcpp::wrap(PeakSummit_Net)), Shield<SEXP>(Rcpp::wrap(Chrom12ID_Net)), Shield<SEXP>(Rcpp::wrap(Print)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline int Get_VectPosIndex_fun_Rcpp(int& NPeaksInvolved, int& Nadj, int& Adj_i, int& Adj_j) {
        typedef SEXP(*Ptr_Get_VectPosIndex_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_VectPosIndex_fun_Rcpp p_Get_VectPosIndex_fun_Rcpp = NULL;
        if (p_Get_VectPosIndex_fun_Rcpp == NULL) {
            validateSignature("int(*Get_VectPosIndex_fun_Rcpp)(int&,int&,int&,int&)");
            p_Get_VectPosIndex_fun_Rcpp = (Ptr_Get_VectPosIndex_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_VectPosIndex_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_VectPosIndex_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(NPeaksInvolved)), Shield<SEXP>(Rcpp::wrap(Nadj)), Shield<SEXP>(Rcpp::wrap(Adj_i)), Shield<SEXP>(Rcpp::wrap(Adj_j)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<int >(rcpp_result_gen);
    }

    inline SEXP Get_VectPosIndex_Vectorized_fun_Rcpp(int& NPeaksInvolved, int& Nadj, Rcpp::NumericVector const& Adj_i_vect, Rcpp::NumericVector const& Adj_j_vect) {
        typedef SEXP(*Ptr_Get_VectPosIndex_Vectorized_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_VectPosIndex_Vectorized_fun_Rcpp p_Get_VectPosIndex_Vectorized_fun_Rcpp = NULL;
        if (p_Get_VectPosIndex_Vectorized_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Get_VectPosIndex_Vectorized_fun_Rcpp)(int&,int&,Rcpp::NumericVector const&,Rcpp::NumericVector const&)");
            p_Get_VectPosIndex_Vectorized_fun_Rcpp = (Ptr_Get_VectPosIndex_Vectorized_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_VectPosIndex_Vectorized_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_VectPosIndex_Vectorized_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(NPeaksInvolved)), Shield<SEXP>(Rcpp::wrap(Nadj)), Shield<SEXP>(Rcpp::wrap(Adj_i_vect)), Shield<SEXP>(Rcpp::wrap(Adj_j_vect)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP Dijkstra_GSP_fun_Rcpp(int& src, Rcpp::List const& Network, int const& NPeaksInvolved) {
        typedef SEXP(*Ptr_Dijkstra_GSP_fun_Rcpp)(SEXP,SEXP,SEXP);
        static Ptr_Dijkstra_GSP_fun_Rcpp p_Dijkstra_GSP_fun_Rcpp = NULL;
        if (p_Dijkstra_GSP_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Dijkstra_GSP_fun_Rcpp)(int&,Rcpp::List const&,int const&)");
            p_Dijkstra_GSP_fun_Rcpp = (Ptr_Dijkstra_GSP_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Dijkstra_GSP_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Dijkstra_GSP_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(src)), Shield<SEXP>(Rcpp::wrap(Network)), Shield<SEXP>(Rcpp::wrap(NPeaksInvolved)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline void Save_BigMat_fun_Rcpp(SEXP& BigInfoMatDescInst, Rcpp::NumericVector const& GlobalNodesDist, int& k, int& StartInd, int& EndInd, Rcpp::NumericVector& InteractionPairs, Rcpp::NumericVector const& NiNjIndeces, Rcpp::NumericVector const& NiNjMat) {
        typedef SEXP(*Ptr_Save_BigMat_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Save_BigMat_fun_Rcpp p_Save_BigMat_fun_Rcpp = NULL;
        if (p_Save_BigMat_fun_Rcpp == NULL) {
            validateSignature("void(*Save_BigMat_fun_Rcpp)(SEXP&,Rcpp::NumericVector const&,int&,int&,int&,Rcpp::NumericVector&,Rcpp::NumericVector const&,Rcpp::NumericVector const&)");
            p_Save_BigMat_fun_Rcpp = (Ptr_Save_BigMat_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Save_BigMat_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Save_BigMat_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(BigInfoMatDescInst)), Shield<SEXP>(Rcpp::wrap(GlobalNodesDist)), Shield<SEXP>(Rcpp::wrap(k)), Shield<SEXP>(Rcpp::wrap(StartInd)), Shield<SEXP>(Rcpp::wrap(EndInd)), Shield<SEXP>(Rcpp::wrap(InteractionPairs)), Shield<SEXP>(Rcpp::wrap(NiNjIndeces)), Shield<SEXP>(Rcpp::wrap(NiNjMat)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
    }

    inline void Get_QCellPETCounts_fun_Rcpp(Rcpp::NumericVector const& BinsVij, int const& BinsVijSize, Rcpp::NumericVector const& ObsVij, Rcpp::NumericMatrix& InteractionInfMat, Rcpp::NumericVector const& AllInteIndeces, Rcpp::NumericVector& QCellPETCountsVij) {
        typedef SEXP(*Ptr_Get_QCellPETCounts_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_QCellPETCounts_fun_Rcpp p_Get_QCellPETCounts_fun_Rcpp = NULL;
        if (p_Get_QCellPETCounts_fun_Rcpp == NULL) {
            validateSignature("void(*Get_QCellPETCounts_fun_Rcpp)(Rcpp::NumericVector const&,int const&,Rcpp::NumericVector const&,Rcpp::NumericMatrix&,Rcpp::NumericVector const&,Rcpp::NumericVector&)");
            p_Get_QCellPETCounts_fun_Rcpp = (Ptr_Get_QCellPETCounts_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_QCellPETCounts_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_QCellPETCounts_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(BinsVij)), Shield<SEXP>(Rcpp::wrap(BinsVijSize)), Shield<SEXP>(Rcpp::wrap(ObsVij)), Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(AllInteIndeces)), Shield<SEXP>(Rcpp::wrap(QCellPETCountsVij)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
    }

    inline void Get_QCellCombCounts_fun_Rcpp(Rcpp::NumericVector const& BinsVij, int const& BinsVijSize, SEXP& BigInfoMatDescInst, Rcpp::NumericVector const& VkhOrder, Rcpp::NumericVector& QCellCombCountsVij_Net, int const& StartInd, int const& EndInd) {
        typedef SEXP(*Ptr_Get_QCellCombCounts_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Get_QCellCombCounts_fun_Rcpp p_Get_QCellCombCounts_fun_Rcpp = NULL;
        if (p_Get_QCellCombCounts_fun_Rcpp == NULL) {
            validateSignature("void(*Get_QCellCombCounts_fun_Rcpp)(Rcpp::NumericVector const&,int const&,SEXP&,Rcpp::NumericVector const&,Rcpp::NumericVector&,int const&,int const&)");
            p_Get_QCellCombCounts_fun_Rcpp = (Ptr_Get_QCellCombCounts_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_QCellCombCounts_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_QCellCombCounts_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(BinsVij)), Shield<SEXP>(Rcpp::wrap(BinsVijSize)), Shield<SEXP>(Rcpp::wrap(BigInfoMatDescInst)), Shield<SEXP>(Rcpp::wrap(VkhOrder)), Shield<SEXP>(Rcpp::wrap(QCellCombCountsVij_Net)), Shield<SEXP>(Rcpp::wrap(StartInd)), Shield<SEXP>(Rcpp::wrap(EndInd)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
    }

    inline SEXP Assess_Interaction_fun_Rcpp(int& CurInt, Rcpp::NumericMatrix& InteractionInfMat, Rcpp::Function& Poiss_fun, Rcpp::NumericMatrix const& BinMatVij) {
        typedef SEXP(*Ptr_Assess_Interaction_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_Assess_Interaction_fun_Rcpp p_Assess_Interaction_fun_Rcpp = NULL;
        if (p_Assess_Interaction_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Assess_Interaction_fun_Rcpp)(int&,Rcpp::NumericMatrix&,Rcpp::Function&,Rcpp::NumericMatrix const&)");
            p_Assess_Interaction_fun_Rcpp = (Ptr_Assess_Interaction_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Assess_Interaction_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Assess_Interaction_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(CurInt)), Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(Poiss_fun)), Shield<SEXP>(Rcpp::wrap(BinMatVij)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline void Update_ToBeAddedInter_fun_Rcpp(Rcpp::NumericMatrix& InteractionInfMat, int& k, int& h, int& i, int& TR_Si, Rcpp::NumericVector& LastInteractions, int& Chrom12ID_i) {
        typedef SEXP(*Ptr_Update_ToBeAddedInter_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Update_ToBeAddedInter_fun_Rcpp p_Update_ToBeAddedInter_fun_Rcpp = NULL;
        if (p_Update_ToBeAddedInter_fun_Rcpp == NULL) {
            validateSignature("void(*Update_ToBeAddedInter_fun_Rcpp)(Rcpp::NumericMatrix&,int&,int&,int&,int&,Rcpp::NumericVector&,int&)");
            p_Update_ToBeAddedInter_fun_Rcpp = (Ptr_Update_ToBeAddedInter_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Update_ToBeAddedInter_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Update_ToBeAddedInter_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(k)), Shield<SEXP>(Rcpp::wrap(h)), Shield<SEXP>(Rcpp::wrap(i)), Shield<SEXP>(Rcpp::wrap(TR_Si)), Shield<SEXP>(Rcpp::wrap(LastInteractions)), Shield<SEXP>(Rcpp::wrap(Chrom12ID_i)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
    }

    inline SEXP Check_BiProd_fun_Rcpp(Rcpp::NumericMatrix& InteractionInfMat, int& k, int& h, Rcpp::NumericVector& AllInteIndeces, double& TotBiRem, int& Chrom12ID_i, int& OrdersCount) {
        typedef SEXP(*Ptr_Check_BiProd_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_Check_BiProd_fun_Rcpp p_Check_BiProd_fun_Rcpp = NULL;
        if (p_Check_BiProd_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Check_BiProd_fun_Rcpp)(Rcpp::NumericMatrix&,int&,int&,Rcpp::NumericVector&,double&,int&,int&)");
            p_Check_BiProd_fun_Rcpp = (Ptr_Check_BiProd_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Check_BiProd_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Check_BiProd_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(k)), Shield<SEXP>(Rcpp::wrap(h)), Shield<SEXP>(Rcpp::wrap(AllInteIndeces)), Shield<SEXP>(Rcpp::wrap(TotBiRem)), Shield<SEXP>(Rcpp::wrap(Chrom12ID_i)), Shield<SEXP>(Rcpp::wrap(OrdersCount)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP Get_InteractionInfo_fun_Rcpp(Rcpp::NumericMatrix& InteractionInfMat, int& NInteractions) {
        typedef SEXP(*Ptr_Get_InteractionInfo_fun_Rcpp)(SEXP,SEXP);
        static Ptr_Get_InteractionInfo_fun_Rcpp p_Get_InteractionInfo_fun_Rcpp = NULL;
        if (p_Get_InteractionInfo_fun_Rcpp == NULL) {
            validateSignature("SEXP(*Get_InteractionInfo_fun_Rcpp)(Rcpp::NumericMatrix&,int&)");
            p_Get_InteractionInfo_fun_Rcpp = (Ptr_Get_InteractionInfo_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_Get_InteractionInfo_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Get_InteractionInfo_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(InteractionInfMat)), Shield<SEXP>(Rcpp::wrap(NInteractions)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

    inline SEXP SubsetSignificantInteractions_fun_Rcpp(int const& NInteractionInfo, Rcpp::NumericVector const& FDR, Rcpp::NumericVector const& Order, double const& threshold) {
        typedef SEXP(*Ptr_SubsetSignificantInteractions_fun_Rcpp)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_SubsetSignificantInteractions_fun_Rcpp p_SubsetSignificantInteractions_fun_Rcpp = NULL;
        if (p_SubsetSignificantInteractions_fun_Rcpp == NULL) {
            validateSignature("SEXP(*SubsetSignificantInteractions_fun_Rcpp)(int const&,Rcpp::NumericVector const&,Rcpp::NumericVector const&,double const&)");
            p_SubsetSignificantInteractions_fun_Rcpp = (Ptr_SubsetSignificantInteractions_fun_Rcpp)R_GetCCallable("MACPET", "_MACPET_SubsetSignificantInteractions_fun_Rcpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_SubsetSignificantInteractions_fun_Rcpp(Shield<SEXP>(Rcpp::wrap(NInteractionInfo)), Shield<SEXP>(Rcpp::wrap(FDR)), Shield<SEXP>(Rcpp::wrap(Order)), Shield<SEXP>(Rcpp::wrap(threshold)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<SEXP >(rcpp_result_gen);
    }

}

#endif // RCPP_MACPET_RCPPEXPORTS_H_GEN_
