00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <clipsmm/module.h>
00020
00021 extern "C" {
00022 #include <clips/clips.h>
00023 };
00024
00025 #include <clipsmm/environment.h>
00026
00027 namespace DACLIPS {
00028
00029 Module::Module( Environment& environment, void* cobj ):
00030 EnvironmentObject( environment, cobj )
00031 {
00032 }
00033
00034 Module::pointer Module::create( Environment & environment, void * cobj )
00035 {
00036 return Module::pointer( new Module( environment, cobj ) );
00037 }
00038
00039 Module::~Module()
00040 {
00041 }
00042
00043 std::string Module::name( )
00044 {
00045 if ( m_cobj )
00046 return EnvGetDefmoduleName( m_environment.cobj(), m_cobj );
00047 else
00048 return std::string();
00049 }
00050
00051 std::string Module::formatted( )
00052 {
00053 if ( m_cobj )
00054 return EnvGetDefmodulePPForm( m_environment.cobj(), m_cobj );
00055 else
00056 return std::string();
00057 }
00058
00059 Module::pointer Module::next( )
00060 {
00061 void* nxt;
00062 if ( !m_cobj )
00063 return Module::pointer();
00064 nxt = EnvGetNextDefmodule( m_environment.cobj(), m_cobj );
00065 if ( nxt )
00066 return Module::create( m_environment, nxt );
00067 else
00068 return Module::pointer();
00069 }
00070
00071 Module::pointer Module::set_current( )
00072 {
00073 void* old;
00074 if ( !m_cobj )
00075 return Module::pointer();
00076 old = EnvSetCurrentModule( m_environment.cobj(), m_cobj );
00077 if ( old )
00078 return Module::create( m_environment, old );
00079 else
00080 return Module::pointer();
00081 }
00082
00083 void Module::focus( )
00084 {
00085 if ( m_cobj )
00086 EnvFocus( m_environment.cobj(), m_cobj );
00087 }
00088
00089 }
00090