SHOGUN  4.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SerialComputationEngine.cpp
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * Written (W) 2013 Soumyajit De
8  */
9 
10 #include <shogun/lib/common.h>
14 #include <shogun/io/SGIO.h>
15 
16 namespace shogun
17 {
18 
21 {
22  SG_GCDEBUG("%s created (%p)\n", this->get_name(), this)
23 }
24 
26 {
27  SG_GCDEBUG("%s destroyed (%p)\n", this->get_name(), this)
28 }
29 
31 {
32  SG_DEBUG("Entering. The job is being computed!\n");
33 
34  REQUIRE(job, "Job to be computed is NULL\n");
35  job->compute();
36 
37  SG_DEBUG("The job is computed. Leaving!\n");
38 }
39 
41 {
42  SG_DEBUG("All jobs are computed!\n");
43 }
44 
45 }
virtual void submit_job(CIndependentJob *job)
#define REQUIRE(x,...)
Definition: SGIO.h:206
virtual const char * get_name() const
#define SG_GCDEBUG(...)
Definition: SGIO.h:102
#define SG_DEBUG(...)
Definition: SGIO.h:107
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18
Abstract base for general computation jobs to be registered in CIndependentComputationEngine. compute method produces a job result and submits it to the internal JobResultAggregator. Each set of jobs that form a result will share the same job result aggregator.
Abstract base class for solving multiple independent instances of CIndependentJob. It has one method, submit_job, which may add the job to an internal queue and might block if there is yet not space in the queue. After jobs are submitted, it might not yet be ready. wait_for_all waits until all jobs are completed, which must be called to guarantee that all jobs are finished.
virtual void compute()=0

SHOGUN Machine Learning Toolbox - Documentation