Class CheckerCommand

Inheritance Relationships

Base Type

Class Documentation

class CheckerCommand : public ICommand

Command for checking the status and integrity of computational chemistry jobs.

This class handles multiple sub-commands (e.g., check done, check errors, check imaginary frequencies) based on the CommandType provided during instantiation.

Public Functions

CheckerCommand(CommandType type, std::string name, std::string desc)

Constructs a CheckerCommand for a specific check type.

Parameters:
  • type – The specific CommandType (e.g., CHECK_DONE, CHECK_ERRORS).

  • name – The CLI string used to invoke this command.

  • desc – A brief description of this specific checker variant.

virtual std::string get_name() const override

Retrieves the name of the command.

This name corresponds to the keyword used in the CLI to invoke the command.

Returns:

std::string The command name (e.g., “thermo”, “extract”).

virtual std::string get_description() const override

Retrieves a short description of the command.

This description is displayed in the application’s help menu.

Returns:

std::string A brief description of what the command does.

virtual void parse_args(int argc, char *argv[], int &i, CommandContext &context) override

Parses command-specific arguments from the command line.

Parameters:
  • argc – The total number of command-line arguments.

  • argv – Array of command-line argument strings.

  • i – The current index in argv. Passed by reference to allow the command to consume arguments.

  • context – The CommandContext used to store application-level options and warnings.

virtual int execute(const CommandContext &context) override

Executes the command.

Parameters:

context – The CommandContext containing shared configuration.

Returns:

int The exit code of the execution (0 for success, non-zero for failure).

int execute_check_done(const CommandContext &context)
int execute_check_errors(const CommandContext &context)
int execute_check_pcm(const CommandContext &context)
int execute_check_imaginary(const CommandContext &context)
int execute_check_all(const CommandContext &context)