00001 // Copyright 2009-2015 Sandia Corporation. Under the terms 00002 // of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. 00003 // Government retains certain rights in this software. 00004 // 00005 // Copyright (c) 2009-2015, Sandia Corporation 00006 // All rights reserved. 00007 // 00008 // This file is part of the SST software package. For license 00009 // information, see the LICENSE file in the top level directory of the 00010 // distribution. 00011 00012 00013 #ifndef SST_CORE_MODEL_H 00014 #define SST_CORE_MODEL_H 00015 00016 #include <sst/core/configGraph.h> 00017 00018 namespace SST { 00019 00020 /** Base class for Model Generation 00021 */ 00022 class SSTModelDescription { 00023 00024 public: 00025 SSTModelDescription(); 00026 virtual ~SSTModelDescription() {}; 00027 /** Create the ConfigGraph 00028 * 00029 * This function should be overridden by subclasses. 00030 * 00031 * This function is responsible for reading any configuration 00032 * files and generating a ConfigGraph object. 00033 */ 00034 virtual ConfigGraph* createConfigGraph() = 0; 00035 00036 }; 00037 00038 } 00039 00040 #endif