docker_images/c/wrapper/glue/ControlGlue.cpp (49 lines of code) (raw):

// Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. #include <iostream> #include "ControlGlue.h" #include "ModuleGlue.h" #include "json.h" #if unix #include "unistd.h" #endif using namespace std; extern ModuleGlue module_glue; ControlGlue::ControlGlue() { } ControlGlue::~ControlGlue() { } void ControlGlue::CleanupResources() { try { module_glue.CleanupResources(); } catch (runtime_error) { cout << "Ignoring exception on module cleanup" << endl; } } void ControlGlue::PrintMessage(const char* message) { cout << message; } std::string ControlGlue::GetCapabilities() { Json json; json.setBool("flags.v2_connect_group", false); json.setBool("flags.system_control_app", true); return json.serializeToString(); } #define stringize_expand(x) (#x) #define stringize(x) stringize_expand(x) std::string ControlGlue::GetWrapperStats() { Json json; json.setString("language", "C"); json.setString("languageVersion", stringize(HORTON_COMPILER)); #if unix json.setNumber("wrapperPid", getpid()); #endif return json.serializeToString(); }