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.
blast_tool_factory.hpp File Reference
#include "blast_service.h"
#include "blast_service_api.h"
#include "blast_service_job.h"
#include "blast_tool.hpp"
#include "jansson.h"
Include dependency graph for blast_tool_factory.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  BlastToolFactory
 The base class for generating blast tools. More...
 

Functions

BlastToolCreateBlastToolFromFactory (BlastToolFactory *factory_p, BlastServiceJob *job_p, const char *name_s, const BlastServiceData *data_p)
 Get a newly created BlastTool. More...
 
void FreeBlastToolFactory (BlastToolFactory *factory_p)
 Free a BlastToolFactory. More...
 
Synchronicity GetBlastToolFactorySynchronicity (BlastToolFactory *factory_p)
 Are the BlastTools that this BlastToolFactory create able to run asynchronously? More...
 

Function Documentation

◆ CreateBlastToolFromFactory()

BlastTool* CreateBlastToolFromFactory ( BlastToolFactory factory_p,
BlastServiceJob job_p,
const char *  name_s,
const BlastServiceData data_p 
)

Get a newly created BlastTool.

Parameters
factory_pThe BlastToolFactory to use to create the BlastTool.
job_pThe ServiceJob to associate with the newly generated BlastTool.
name_sThe name to give to the new BlastTool.
data_pThe BlastServiceData for the Service that will use this BlastTool.
Returns
The BlastTool or NULL upon error.

◆ FreeBlastToolFactory()

void FreeBlastToolFactory ( BlastToolFactory factory_p)

Free a BlastToolFactory.

Parameters
factory_pThe BlastToolFactory to deallocate.

◆ GetBlastToolFactorySynchronicity()

Synchronicity GetBlastToolFactorySynchronicity ( BlastToolFactory factory_p)

Are the BlastTools that this BlastToolFactory create able to run asynchronously?

Parameters
factory_pThe BlastToolFactory to check.
Returns
true if the BlastTools are able to run asynchronously, false otherwise.
See also
BlastToolFactory::AreToolsAsynchronous