CASM  1.1.0
A Clusters Approach to Statistical Mechanics
RemoveSupercell.hh
Go to the documentation of this file.
1 #ifndef CASM_RemoveSupercell
2 #define CASM_RemoveSupercell
3 
4 #include <string>
5 
8 
9 namespace CASM {
10 
11 class PrimClex;
12 class Supercell;
13 class Log;
14 
15 namespace Completer {
16 class RmOption;
17 }
18 
19 namespace DB {
20 
21 template <>
22 class Remove<Supercell> {
23  public:
24  Remove(const PrimClex &primclex, std::string report_dir);
25 
28  void erase(const DB::Selection<Supercell> &selection, bool dry_run);
29 
31  void erase_data(const DB::Selection<Supercell> &selection, bool dry_run);
32 
35  void erase_all(const DB::Selection<Supercell> &selection, bool dry_run);
36 
37  static std::string desc();
38  static int run(const PrimClex &primclex, const Completer::RmOption &opt);
39 
40  const PrimClex &primclex() const;
41 
42  std::string report_dir() const;
43 
44  private:
46  std::string m_report_dir;
47 };
48 
49 } // namespace DB
50 } // namespace CASM
51 
52 #endif
const PrimClex & primclex() const
Definition: ConfigData.hh:152
static std::string desc()
Definition: Remove_impl.hh:104
Remove(const PrimClex &primclex, std::string report_dir)
Definition: Remove_impl.hh:100
static int run(const PrimClex &, const Completer::RmOption &opt)
Definition: Remove_impl.hh:130
void erase(const DB::Selection< ConfigType > &selection, bool dry_run)
Erase Configurations that have no data.
Definition: Remove_impl.hh:27
void erase_data(const DB::Selection< ConfigType > &selection, bool dry_run)
Erase data and files (permanently), but not Configuration.
Definition: Remove_impl.hh:51
void erase_all(const DB::Selection< ConfigType > &selection, bool dry_run)
Removes Configurations and data and files (permanently)
Definition: Remove_impl.hh:77
PrimClex is the top-level data structure for a CASM project.
Definition: PrimClex.hh:55
Represents a supercell of the primitive parent crystal structure.
Definition: Supercell.hh:51
Main CASM namespace.
Definition: APICommand.hh:8