Fawkes API  Fawkes Development Version
plugin.cpp
1 
2 /***************************************************************************
3  * plugin.cpp - Fawkes ECLiPSe CLP Plugin
4  *
5  * Created: Wed Jul 15 11:33:53 2009
6  * Copyright 2009 Daniel Beck
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Library General Public License for more details.
19  *
20  * Read the full text in the LICENSE.GPL file in the doc directory.
21  */
22 
23 #include "plugin.h"
24 #include "control_thread.h"
25 #include "eclipse_thread.h"
26 
27 /** @class EclipseCLPPlugin "plugin.h"
28  * The ECLiPSe CLP plugin.
29  * @author Daniel Beck
30  */
31 
32 using namespace fawkes;
33 
34 /** Constructor.
35  * @param config the configuration
36  */
38  : Plugin( config )
39 {
40  EclipseAgentThread* eclipse_thread = new EclipseAgentThread();
41  thread_list.push_back( eclipse_thread );
42  thread_list.push_back( new AgentControlThread( eclipse_thread ) );
43 }
44 
45 PLUGIN_DESCRIPTION( "Runs the ECLiPSe CLP interpreter" )
46 EXPORT_PLUGIN( EclipseCLPPlugin )
EclipseCLPPlugin(fawkes::Configuration *config)
Constructor.
Definition: plugin.cpp:37
Plugin interface class.
Definition: plugin.h:33
Fawkes library namespace.
ThreadList thread_list
Thread list member.
Definition: plugin.h:53
This thread creates an ECLiPSe context in which the ECLiPSe interpreter and the program are loaded...
The ECLiPSe CLP plugin.
Definition: plugin.h:28
void push_back(Thread *thread)
Add thread to the end.
Interface for configuration handling.
Definition: config.h:67
This thread controls the agent thread by sending signals.