OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
System.h
Go to the documentation of this file.
1//
2// Class System
3// The class for OPAL SYSTEM command on a single core.
4//
5// Copyright (c) 2000 - 2021, Paul Scherrer Institut, Villigen PSI, Switzerland
6// All rights reserved
7//
8// This file is part of OPAL.
9//
10// OPAL is free software: you can redistribute it and/or modify
11// it under the terms of the GNU General Public License as published by
12// the Free Software Foundation, either version 3 of the License, or
13// (at your option) any later version.
14//
15// You should have received a copy of the GNU General Public License
16// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
17//
18#ifndef OPAL_System_HH
19#define OPAL_System_HH
20
22
23class System : public Action {
24public:
26 System();
27
28 virtual ~System();
29
31 virtual System* clone(const std::string& name);
32
34 virtual void execute();
35
37 virtual void parse(Statement&);
38
39private:
40 // Not implemented.
41 System(const System&);
42 void operator=(const System&);
43
44 // Clone constructor.
45 System(const std::string& name, System* parent);
46};
47
48#endif // OPAL_System_HH
The base class for all OPAL actions.
Definition Action.h:29
Interface for statements.
Definition Statement.h:37
virtual ~System()
Definition System.cpp:37
virtual System * clone(const std::string &name)
Make clone.
Definition System.cpp:39
void operator=(const System &)
virtual void execute()
Execute the command.
Definition System.cpp:41
System(const System &)
virtual void parse(Statement &)
Parse command (special for one-attribute command).
Definition System.cpp:50
System()
Exemplar constructor.
Definition System.cpp:26