CASM  1.1.0
A Clusters Approach to Statistical Mechanics
casm_functions.hh File Reference
#include <boost/filesystem/path.hpp>
#include "casm/app/CLIParse.hh"
#include "casm/app/errors.hh"
#include "casm/global/definitions.hh"
#include "casm/misc/cloneable_ptr.hh"
#include "casm/misc/unique_cloneable_map.hh"

Go to the source code of this file.

Classes

struct  CASM::CommandArgs
 Data structure holding basic CASM command info. More...
 
class  CASM::InterfaceBase< OptionType >
 Base class for generic use of algorithms through the API. More...
 

Namespaces

 CASM
 Main CASM namespace.
 

Typedefs

typedef std::function< int(const CommandArgs &)> CASM::Command
 
typedef std::map< std::string, Command > CASM::CommandMap
 
template<typename OptionType >
using CASM::InterfaceMap = notstd::unique_cloneable_map< std::string, InterfaceBase< OptionType > >
 Used to hold a list of all algorithms that may be accessed via the API. More...
 

Functions

void CASM::print_splash (std::ostream &out)
 
CommandMap & CASM::command_map ()
 Return static CommandMap containing all CASM API commands. More...
 
int CASM::casm_api (const CommandArgs &args)
 Executes CASM commands specified by args. More...
 
PrimClex & CASM::make_primclex_if_not (const CommandArgs &args, std::unique_ptr< PrimClex > &uniq_primclex)
 If !_primclex, construct new PrimClex stored in uniq_primclex, then return reference to existing or constructed PrimClex. More...
 
std::ostream & CASM::make_ostream_if (bool output, std::ostream &sout, std::unique_ptr< std::ostream > &fout, fs::path out_path, bool gzip)
 Return a reference to proper std::ostream. More...
 
int CASM::help_command (const CommandArgs &args)
 Print CASM help info to log() More...
 
int CASM::version_command (const CommandArgs &args)
 
template<typename OptionType >
std::unique_ptr< InterfaceMap< OptionType > > CASM::make_interface_map ()
 Use to construct an InterfaceMap. More...