1
2
3
4
5
6 #ifndef CMAJOR_MID_INTERFACE_INCLUDED
7 #define CMAJOR_MID_INTERFACE_INCLUDED
8 #include <cmajor/cmmid/CmmApi.hpp>
9 #include <cmajor/cmmid/BackEnd.hpp>
10 #include <cmajor/ir/Emitter.hpp>
11 #include <cmajor/ir/EmittingContext.hpp>
12
13 extern "C" cmajor::ir::EmittingContext* CmmCreateEmittingContext(int optimizationLevel);
14 extern "C" void CmmDestroyEmittingContext(cmajor::ir::EmittingContext* emittingContext);
15 extern "C" cmajor::ir::Emitter* CmmCreateEmitter(cmajor::ir::EmittingContext* emittingContext);
16 extern "C" void CmmDestroyEmitter(cmajor::ir::Emitter* emitterHandle);
17 extern "C" cmajor::mid::BackEndKind GetBackEnd();
18
19 #endif // CMAJOR_MID_BACK_END_INCLUDED
20