|
Grassroots Infrastructure
The Grassroots Infrastructure is a suite of computing tools to help users and developers use scientific data infrastructure that can easily be interconnected.
|
A class that will run Blast as a system process. More...
#include <system_blast_tool.hpp>
Public Member Functions | |
| SystemBlastTool (BlastServiceJob *service_job_p, const char *name_s, const char *factory_s, const BlastServiceData *data_p, const char *blast_program_name_s) | |
| Create a SystemBlastTool for a given ServiceJob. More... | |
| SystemBlastTool (BlastServiceJob *job_p, const BlastServiceData *data_p, const json_t *json_p) | |
| Create a SystemBlastTool for a given ServiceJob using the configuration details from a serialised JSON fragment. More... | |
| virtual | ~SystemBlastTool () |
| The SystemBlastTool destructor. More... | |
| virtual bool | ParseParameters (ParameterSet *params_p, BlastAppParameters *app_params_p) |
| Parse a ParameterSet to configure a BlastTool prior to it being ran. More... | |
| virtual OperationStatus | Run () |
| Run this BlastTool. More... | |
| virtual OperationStatus | GetStatus (bool update_flag=true) |
| Get the status of a BlastTool. More... | |
Public Member Functions inherited from ExternalBlastTool | |
| ExternalBlastTool (BlastServiceJob *job_p, const char *name_s, const char *factory_s, const BlastServiceData *data_p, const char *blast_program_name_s, const bool async_flag) | |
| Create a ExternalBlastTool for a given ServiceJob. More... | |
| ExternalBlastTool (BlastServiceJob *job_p, const BlastServiceData *data_p, const json_t *json_p) | |
| Create a ExternalBlastTool for a given ServiceJob using the configuration details from a serialised JSON fragment. More... | |
| virtual | ~ExternalBlastTool () |
| The ExternalBlastTool destructor. More... | |
| virtual bool | SetInputFilename (const char *const filename_s) |
| Set the input filename for the BlastTool to use. More... | |
| virtual bool | SetUpOutputFile () |
| Set the output file parameter. More... | |
| virtual char * | GetResults (BlastFormatter *formatter_p) |
| Get the results after the ExternalBlastTool has finished running. More... | |
| virtual char * | GetLog () |
| Get a copy of the log data from the run of this ExternalBlastTool's run. More... | |
Public Member Functions inherited from BlastTool | |
| BlastTool (BlastServiceJob *job_p, const char *name_s, const char *factory_s, const BlastServiceData *data_p, const uint32 output_format, const char *custom_output_s) | |
| Create a BlastTool for a given ServiceJob. More... | |
| BlastTool (BlastServiceJob *job_p, const BlastServiceData *data_p, const json_t *json_p) | |
| Create a BlastTool for a given ServiceJob. More... | |
| virtual | ~BlastTool () |
| The BlastTool destructor,. More... | |
| uint32 | GetOutputFormat () const |
| Get the output format code that this BlastTool will produce its results in. More... | |
| virtual bool | PreRun () |
| Any custom functionality required before running a BlastTool. More... | |
| virtual void | PostRun () |
| Any custom functionality required after running a BlastTool. More... | |
| virtual bool | AddErrorDetails () |
| const uuid_t & | GetUUID () const |
| Get the uuid for the ServiceJob that this BlastTool is linked with. More... | |
| const char * | GetName () const |
| Get the name asssociated with this BlastTool. More... | |
| json_t * | GetAsJSON () |
| Get the JSON-based persistent description of this BlastTool. More... | |
| const char * | GetFactoryName () const |
| Get the name of the BlastToolFactory that created this BlastTool. More... | |
| bool | SetCustomOutputColumns (const char *custom_columns_s) |
| void | FreeBlastTool (BlastTool *tool_p) |
| Free a BlastTool. More... | |
| OperationStatus | RunBlast (BlastTool *tool_p) |
| Run Blast using the parameters that have been previously using ConvertArguments. More... | |
| OperationStatus | GetBlastStatus (BlastTool *tool_p) |
| Get the current OperationStatus of a BlastTool. More... | |
| bool | IsBlastToolSynchronous (BlastTool *tool_p) |
| Is the BlastTool going to run asynchronously? More... | |
Protected Member Functions | |
| virtual ArgsProcessor * | GetArgsProcessor () |
| Get the ArgsProcessor that this BlastTool will use to parse the input ParameterSet prior to running its job. More... | |
| bool | Init (const char *prog_s) |
| Initialise the SystemBlastTool prior to it being run. More... | |
| bool | SaveCommandLine (const char *command_line_s) |
Protected Member Functions inherited from ExternalBlastTool | |
| virtual bool | AddBlastArg (const char *const arg_s, const bool hyphen_flag) |
| Add the argument to the command line arguments that this BlastTool will run with. More... | |
| virtual bool | AddBlastArgsPair (const char *key_s, const char *value_s) |
| Add a pair of arguments to the command line arguments that this BlastTool will run with. More... | |
| char * | GetJobFilename (const char *const prefix_s, const char *const suffix_s) |
| Create the filename to use for a ServiceJob. More... | |
| virtual bool | AddToJSON (json_t *root_p) |
| This method is used to serialise this ExternalBlastTool so that it can be recreated from another calling process when required. More... | |
Protected Attributes | |
| ByteBufferArgsProcessor * | sbt_args_processor_p |
Protected Attributes inherited from ExternalBlastTool | |
| char * | ebt_results_filename_s |
| The filename which the Blast results will be written to if the job runs successfully. More... | |
| char * | ebt_working_directory_s |
| The working directory where all of the input, output and log files will be created. More... | |
| char * | ebt_blast_s |
| The name of the blast command line executable to use. More... | |
| bool | ebt_async_flag |
If this is true, then the ExternalBlastTool will run asynchronously. More... | |
Protected Attributes inherited from BlastTool | |
| uint32 | bt_output_format |
| The output format code to use. More... | |
| char * | bt_custom_output_columns_s |
| Any custom columns for tabular output formats. More... | |
Additional Inherited Members | |
Static Public Attributes inherited from ExternalBlastTool | |
| static const char *const | EBT_INPUT_SUFFIX_S |
| This is the string that will get appended to each input file used by the ExternalBlastTool. More... | |
| static const char *const | EBT_ASYNC_S |
| This is the string that will get appended to each log file created when an ExternalBlastTool is ran. More... | |
A class that will run Blast as a system process.
| SystemBlastTool | ( | BlastServiceJob * | service_job_p, |
| const char * | name_s, | ||
| const char * | factory_s, | ||
| const BlastServiceData * | data_p, | ||
| const char * | blast_program_name_s | ||
| ) |
Create a SystemBlastTool for a given ServiceJob.
| service_job_p | The ServiceJob to associate with this SystemBlastTool. |
| name_s | The name to give to this SystemBlastTool. |
| factory_s | The name of the DrmaaBlastFactory that is creating this DrmaaBlastTool. |
| data_p | The BlastServiceData for the Service that will run this SystemBlastTool. |
| blast_program_name_s | The name of blast command line executable that this SystemBlastTool will call to run its blast job. |
| SystemBlastTool | ( | BlastServiceJob * | job_p, |
| const BlastServiceData * | data_p, | ||
| const json_t * | json_p | ||
| ) |
Create a SystemBlastTool for a given ServiceJob using the configuration details from a serialised JSON fragment.
| job_p | The ServiceJob to associate with this SystemBlastTool. |
| data_p | The BlastServiceData for the Service that will run this SystemBlastTool. |
| json_p | The JSON fragment to fill in the serialised values such as job name, etc. |
|
virtual |
The SystemBlastTool destructor.
|
virtual |
Parse a ParameterSet to configure a BlastTool prior to it being ran.
| params_p | The ParameterSet to parse. |
| app_params_p | The BlastAppParameters to use process the values from the given ParameterSet. |
true if the BlastTool was configured successfully and is ready to be ran, false otherwise. Reimplemented from ExternalBlastTool.
|
virtual |
Run this BlastTool.
Implements BlastTool.
Reimplemented in AsyncSystemBlastTool, and ThreadedBlastTool.
|
virtual |
Get the status of a BlastTool.
| update_flag | if this is true then the BlastTool will check the status of its running jobs if necessary, if this is false it will return the last cached value. |
Reimplemented from BlastTool.
Reimplemented in AsyncSystemBlastTool, and ThreadedBlastTool.
|
protectedvirtual |
Get the ArgsProcessor that this BlastTool will use to parse the input ParameterSet prior to running its job.
0 upon error. Implements ExternalBlastTool.
|
protected |
Initialise the SystemBlastTool prior to it being run.
| prog_s | The name of the BLAST program that this SystemBlastTool will run. |
true if the SystemBlastTool was initialised successfully, false otherwise.
|
protected |
|
protected |