// // Created by brett on 22/11/22. // #ifndef STEP_3_MPI_H #define STEP_3_MPI_H #include #ifdef USE_MPI #include #include #include namespace Raytracing { extern int numberOfProcesses; extern int currentProcessID; class MPI { public: /** * Create the OpenMPI instance * @param argc argc provided as inputs to the main function * @param argv argv provided as inputs to the main function */ static void init(int argc, char** argv); /** * @return the queue of image bounds which this process needs to do work on */ static std::queue getCurrentImageRegionAssociation(RayCaster& raycaster); }; } #endif #endif //STEP_3_MPI_H