source: colin/trunk/src/colin/SysCallAnalysisCode.h @ 7008

Revision 7008, 1.8 KB checked in by jdsiiro, 4 years ago (diff)

Merging the restructure branches for colin, scolib, and interfaces back
to trunk.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1/*  _________________________________________________________________________
2 *
3 *  Acro: A Common Repository for Optimizers
4 *  Copyright (c) 2008 Sandia Corporation.
5 *  This software is distributed under the BSD License.
6 *  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
7 *  the U.S. Government retains certain rights in this software.
8 *  For more information, see the README.txt file in the top Acro directory.
9 *  _________________________________________________________________________
10 */
11
12/**
13 * \file SysCallAnalysisCode.h
14 *
15 * Defines the colin::SysCallAnalysisCode class.
16 */
17
18#ifndef colin_SysCallAnalysisCode_h
19#define colin_SysCallAnalysisCode_h
20
21#include <acro_config.h>
22#include <colin/AnalysisCode.h>
23#include <colin/CommandShell.h>
24
25namespace colin
26{
27
28
29/** \class SysCallAnalysisCode
30  *
31  * Derived class in the AnalysisCode class hierarchy which spawns
32  * simulations using system calls.
33  *
34  * \c SysCallAnalysisCode creates separate simulation processes using
35  * the C system() command.  It utilizes \c CommandShell to manage shell
36  * syntax and asynchronous invocations.
37  */
38class SysCallAnalysisCode: public AnalysisCode
39{
40public:
41
42   /// Constructor
43   SysCallAnalysisCode() {}
44
45   /// Destructor
46   ~SysCallAnalysisCode() {}
47
48   /** Spawn a complete function evaluation.
49     * Put the SysCallAnalysisCode to the shell using either the default syntax
50     * or specified commandUsage syntax.  This function is used when all portions
51     * of the function evaluation (i.e., all analysis drivers) are executed on
52     * the local processor.
53     */
54   void spawn_evaluation(bool block_flag);
55
56   /// optional command usage string for supporting nonstandard
57   /// command syntax (supported only by SysCall analysis codes)
58   std::string commandUsage;
59
60};
61
62
63}
64
65#endif
Note: See TracBrowser for help on using the repository browser.