MachineIntelligenceCore:Toolchain
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
mic::application::Application Class Referenceabstract

Base class for all applications. More...

#include <Application.hpp>

Inheritance diagram for mic::application::Application:
Collaboration diagram for mic::application::Application:

Public Member Functions

 Application (std::string node_name_)
 
virtual ~Application ()
 
virtual void initialize (int argc, char *argv[])=0
 
virtual void run ()
 
virtual void displayStatus ()
 
- Public Member Functions inherited from mic::configuration::PropertyTree
 PropertyTree (std::string node_name_)
 
virtual ~PropertyTree ()
 
void registerProperty (PropertyInterface &prop)
 
std::string getNodeName () const
 
void loadPropertiesFromConfigNode (boost::property_tree::ptree const &pt_)
 
void printProperties ()
 
void printPropertiesWithValues ()
 
PropertyInterfacegetProperty (const std::string &name)
 
virtual void initializePropertyDependentVariables ()=0
 

Protected Member Functions

virtual bool performSingleStep ()=0
 

Protected Attributes

unsigned long iteration
 Iteration counter. More...
 
mic::configuration::Property
< long > 
number_of_iterations
 

Detailed Description

Base class for all applications.

Author
tkornuta

Definition at line 38 of file Application.hpp.

Constructor & Destructor Documentation

mic::application::Application::Application ( std::string  node_name_)

Constructor. Passess the node name to property tree.

Definition at line 28 of file Application.cpp.

References APP_STATE, iteration, number_of_iterations, and mic::configuration::PropertyTree::registerProperty().

Here is the call graph for this function:

virtual mic::application::Application::~Application ( )
inlinevirtual

Virtual destructor. Empty for now.

Definition at line 49 of file Application.hpp.

Member Function Documentation

void mic::application::Application::displayStatus ( )
virtual

Displays application status.

Definition at line 42 of file Application.cpp.

References iteration, LOG, and LSTATUS.

Referenced by mic::application::ApplicationState::displayStatus().

virtual void mic::application::Application::initialize ( int  argc,
char *  argv[] 
)
pure virtual

Initializes application - abstract, must be implemented by a child class/application.

Parameters
argcNumber of application parameters.
argvArray of application parameters.
virtual bool mic::application::Application::performSingleStep ( )
protectedpure virtual

Performs single step of computations - abstract, to be overridden.

Implemented in mic::application::ContinuousLearningApplication, mic::application::EpisodicTrainAndTestApplication, and mic::application::TrainThenTestApplication.

Referenced by run().

void mic::application::Application::run ( )
virtual

Runs the application - virtual, can be overridden by a child class/application.

Reimplemented in mic::application::ContinuousLearningApplication, mic::application::EpisodicTrainAndTestApplication, and mic::application::TrainThenTestApplication.

Definition at line 48 of file Application.cpp.

References APP_DATA_SYNCHRONIZATION_SCOPED_LOCK, APP_SLEEP, APP_STATE, iteration, LINFO, LOG, number_of_iterations, and performSingleStep().

Here is the call graph for this function:

Member Data Documentation

mic::configuration::Property<long> mic::application::Application::number_of_iterations
protected

Property: number of episodes, after which the application will end. 0 (default value) deactivates terminal condition (unlimited number of episodes).

Definition at line 77 of file Application.hpp.

Referenced by Application(), and run().


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