$darkmode
DENOPTIM
denoptim.programs.combinatorial.FragSpaceExplorer Class Reference

Combinatorial exploration of the fragment space. More...

Inheritance diagram for denoptim.programs.combinatorial.FragSpaceExplorer:
[legend]
Collaboration diagram for denoptim.programs.combinatorial.FragSpaceExplorer:
[legend]

Public Member Functions

 FragSpaceExplorer (File configFile, File workDir)
 Creates and configures the program task. More...
 
void runProgram () throws Throwable
 
- Public Member Functions inherited from denoptim.task.ProgramTask
 ProgramTask (File configFile, File workDir)
 Creates and configures the program task. More...
 
Object call ()
 This method redirects the callable functionality to an abstract method (namely ProgramTask#runProgram()) to be specified by the implementations of this abstract class. More...
 
void printErrorToFile ()
 Method that can be called to create a text file with the error triggered by any Throwable that can be thrown by the execution of the program. More...
 
- Public Member Functions inherited from denoptim.task.Task
 Task (final int id)
 
int getId ()
 
void setVerbosity (int verbosity)
 Set the verbosity: i.e., amount of log printed by this class. More...
 
void setWorkSpace (File workDir)
 Sets the pathname of the work space, i.e., the location where the task is supposed to use move to or to threat as the result of "pwd" at runtime. More...
 
boolean isCompleted ()
 
boolean foundException ()
 
Throwable getException ()
 
String getErrorMessage ()
 
void stopTask ()
 Stop the task if not already completed. More...
 
String toString ()
 Returns a string identifying this task by its ID and reporting whether an exception has been thrown and if the tasks is completed. More...
 
void setNotify (boolean notify)
 

Protected Member Functions

void handleThrowable ()
 Method to handle any Throwable originated from the runProgram() method. More...
 
- Protected Member Functions inherited from denoptim.task.ProgramTask
void handleThrowable ()
 Method to handle any Throwable originated from the runProgram() method. More...
 
void stopLogger ()
 Stops the program-specific logger and releases the lock file on the logfile. More...
 
abstract void runProgram () throws Throwable
 

Private Attributes

CombinatorialExplorerByLayer combinatorialAlgorithm = null
 

Additional Inherited Members

- Public Attributes inherited from denoptim.task.Task
Object lock = new Object()
 Lock for addressing synchronization issues. More...
 
- Protected Attributes inherited from denoptim.task.ProgramTask
File configFilePathName
 File containing configuration parameters for the program task. More...
 
String loggerIdentifier = "none"
 Identifier of this program's logger. More...
 
- Protected Attributes inherited from denoptim.task.Task
boolean notifyGlobalTaskManager = false
 Flag controlling whether this task is expected to notify the static task manager. More...
 
boolean completed = false
 Flag about completion. More...
 
boolean hasException = false
 Flag about exception. More...
 
String errMsg = ""
 Error message produced by any subtask. More...
 
Throwable thrownExc
 Exception thrown. More...
 
int id
 A user-assigned id for this task. More...
 
ProcessHandler processHandler
 Executor for external bash script. More...
 
File workDir
 The file system location where we want to be placed when doing the work. More...
 
int verbosity = 0
 Verbosity level. More...
 
final String SEP = System.getProperty("file.separator")
 System-dependent file separator. More...
 
final String NL = System.getProperty("line.separator")
 System-dependent line separator (newline) More...
 

Detailed Description

Combinatorial exploration of the fragment space.

Graphs are built stepwise layer by layer. Each layer of new graphs is stored in text files and, if a graph is complete (i.e., it corresponds to a finished chemical entity), optionally submitted to further processing, which is controlled by external bash script. Combinations of building blocks (i.e., used defined root graphs or scaffold fragments, proper fragments, and capping groups) are generated serially while each new graph is handled by a dedicated, asynchronous task, thus parallelizing the construction, evaluation, and post-processing of each new graph. The exploration of a fragment space generated all combination of building blocks according to the definition of the fragment space. Symmetry may be enforced in the fragment space (see FragmentSpaceParameters). In such case, if symmetric attachment points are found on a scaffold/fragment/graph, then the exploration is restricted to such combinations respecting the constitutional symmetry of the APs.

Author
Marco Foscato

Definition at line 52 of file FragSpaceExplorer.java.

Constructor & Destructor Documentation

◆ FragSpaceExplorer()

denoptim.programs.combinatorial.FragSpaceExplorer.FragSpaceExplorer ( File  configFile,
File  workDir 
)

Creates and configures the program task.

Parameters
configFilethe file containing the configuration parameters.
workDirthe file system location from which to run the program.

Definition at line 63 of file FragSpaceExplorer.java.

References denoptim.task.Task.workDir.

Member Function Documentation

◆ handleThrowable()

void denoptim.programs.combinatorial.FragSpaceExplorer.handleThrowable ( )
protected

Method to handle any Throwable originated from the runProgram() method.

This method can be overwritten to alter the behavior in case of specific needs.

Reimplemented from denoptim.task.ProgramTask.

Definition at line 90 of file FragSpaceExplorer.java.

References denoptim.programs.combinatorial.FragSpaceExplorer.combinatorialAlgorithm, and denoptim.combinatorial.CombinatorialExplorerByLayer.stopRun().

Here is the call graph for this function:

◆ runProgram()

Member Data Documentation

◆ combinatorialAlgorithm

CombinatorialExplorerByLayer denoptim.programs.combinatorial.FragSpaceExplorer.combinatorialAlgorithm = null
private

The documentation for this class was generated from the following file: