12#ifndef GECODE_FLATZINC_BLACKBOX_PROCESS_HH
13#define GECODE_FLATZINC_BLACKBOX_PROCESS_HH
18#ifdef GECODE_HAS_THREADS
27#ifdef GECODE_HAS_THREADS
31#ifdef GECODE_HAS_THREADS
32 :
owner(std::this_thread::get_id())
38#ifdef GECODE_HAS_THREADS
39 return owner == std::this_thread::get_id();
44 virtual std::string
exchange(
const std::string& request) = 0;
50 const std::vector<std::string>& args);
Platform process session used by the executable blackbox backend.
virtual ~BlackBoxProcessSession(void)
BlackBoxProcessSession(void)
bool owned_by_current_thread(void) const
virtual std::string exchange(const std::string &request)=0
Interpreter for the FlatZinc language.
BlackBoxProcessSession * create_blackbox_process(const std::string &program, const std::vector< std::string > &args)
Create the process implementation selected for the target platform.
Gecode toplevel namespace