DominoBatch.cpp File Reference
#include "CMakeDefinitions.h"
#include <iostream>
#include <memory>
#include <stdexcept>
#include <string>
#include <array>
#include "Walls/InfiniteWall.h"
#include <stdio.h>

Functions

std::string ExecCommand (const char *cmd)
 
int main (int argc, char **argv)
 

Function Documentation

◆ ExecCommand()

std::string ExecCommand ( const char cmd)
39  {
40  std::array<char, 128> buffer;
41  std::string result;
42  std::unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmd, "r"), pclose);
43  if (!pipe) {
44  std::string ret = "Could not run an extra OS command: "; ret.append(cmd);
45  throw std::runtime_error(ret);
46  }
47  while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
48  result += buffer.data();
49  }
50  return result;
51 }

Referenced by main().

◆ main()

int main ( int argc  ,
char **  argv 
)
55 {
56  std::string command;
57  command = "python3 " + getMercuryDPMSourceDir() + "/Tools/SimpleOpt/BatchRun.py " + getMercuryDPMSourceDir() + " " + getMercuryDPMBuildDir();
58  std::cout<<ExecCommand(command.c_str())<<std::endl;
59  return 0;
60 }
const std::string getMercuryDPMSourceDir()
This file is used for generating definitions that give access to CMakeVariables from within a cpp fil...
Definition: CMakeDefinitions.cc:32
const std::string getMercuryDPMBuildDir()
Definition: CMakeDefinitions.cc:37
std::string ExecCommand(const char *cmd)
Definition: DominoBatch.cpp:39

References ExecCommand(), getMercuryDPMBuildDir(), and getMercuryDPMSourceDir().