00001
00002 #ifndef _H_SST_CORE_CONFIG_OUTPUT_PYTHON
00003 #define _H_SST_CORE_CONFIG_OUTPUT_PYTHON
00004
00005 #include <sst/core/configGraph.h>
00006 #include <sst/core/configGraphOutput.h>
00007
00008 namespace SST {
00009 namespace Core {
00010
00011 class PythonConfigGraphOutput : public ConfigGraphOutput {
00012 public:
00013 PythonConfigGraphOutput(const char* path);
00014
00015 virtual void generate(const Config* cfg,
00016 ConfigGraph* graph) throw(ConfigGraphOutputException);
00017
00018 protected:
00019 char* makePythonSafeWithPrefix(const std::string name, const std::string prefix) const;
00020 void makeBufferPythonSafe(char* buffer) const;
00021 char* makeEscapeSafe(const std::string input) const;
00022 bool strncmp(const char* a, const char* b, const size_t n) const;
00023 bool isMultiLine(const char* check) const;
00024 bool isMultiLine(const std::string check) const;
00025 };
00026
00027 }
00028 }
00029
00030 #endif