ALPS MPS Codes
Reference documentation.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
scheduler.hpp
Go to the documentation of this file.
1 /*****************************************************************************
2  *
3  * ALPS MPS DMRG Project
4  *
5  * Copyright (C) 2013 Institute for Theoretical Physics, ETH Zurich
6  * 2013-2013 by Michele Dolfi <dolfim@phys.ethz.ch>
7  *
8  * This software is part of the ALPS Applications, published under the ALPS
9  * Application License; you can use, redistribute it and/or modify it under
10  * the terms of the license, either version 1 or (at your option) any later
11  * version.
12  *
13  * You should have received a copy of the ALPS Application License along with
14  * the ALPS Applications; see the file LICENSE.txt. If not, the license is also
15  * available from http://alps.comp-phys.org/.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
20  * SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
21  * FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23  * DEALINGS IN THE SOFTWARE.
24  *
25  *****************************************************************************/
26 
27 #ifndef ALPS_MPSPSCAN_SCHEDULER_HPP
28 #define ALPS_MPSPSCAN_SCHEDULER_HPP
29 
31 #include "libpscan/options.hpp"
32 #include <boost/filesystem.hpp>
33 
36 };
37 
40  boost::filesystem::path in;
41  boost::filesystem::path out;
42 };
43 
44 class Scheduler {
45 public:
46  Scheduler(const Options&);
47  void run();
48 
49 private:
50  void parse_job_file(const boost::filesystem::path&);
51  void checkpoint_status() const;
52 
53  boost::filesystem::path outfilepath;
54  boost::filesystem::path infilepath;
55 
56  time_stopper stop_callback;
57  std::vector<TaskDescriptor> tasks;
58 };
59 
60 #endif
TaskStatusFlag status
Definition: scheduler.hpp:39
boost::filesystem::path in
Definition: scheduler.hpp:40
boost::filesystem::path out
Definition: scheduler.hpp:41
Scheduler(const Options &)
Definition: scheduler.cpp:39
void run()
Definition: scheduler.cpp:156
Adapted from alps/ngs/scheduler/stop_callback.hpp.
Definition: time_stopper.h:34
TaskStatusFlag
Definition: scheduler.hpp:34
program options parser for parameter scans scheduler