50 likes | 175 Views
CLIPS Integration with other Systems. My CSc 214 project (VB/CLIPS integration overview) Two web sources Available from source A (free): C++ source code for CLIPS and MFC example Available from source B: ActiveX Control (not free) OLE InProcess Server DLL (not free) CLIPS DLL (free)
E N D
CLIPS Integration with other Systems • My CSc 214 project (VB/CLIPS integration overview) • Two web sources • Available from source A (free): • C++ source code for CLIPS and MFC example • Available from source B: • ActiveX Control (not free) • OLE InProcess Server DLL (not free) • CLIPS DLL (free) • VB/High Level Lang. Interface DLL (free) • Works with ODBC Interface for CLIPS (free)
Source A #include "ClipsEng.h" void main() { try { CLIPSEngine eng; eng.load("test.clp"); eng.reset(); eng.run(); } catch(CLIPSException *ex) { printf("CLIPS error: %s\n", ex->why()); delete ex; } } Also, can execute specific CLIPS commands: eng.execCommand(“(defrule rule1 (break-time 100) => (assert (breaker failure) ))”); Also, offers kind of custom callback mechanism (e.g., do something special when a particular rule fires): Define MyFunc1 in your C++ code eng.defineFunc("myfunc1",'i', MyFunc1, "MyFunc1"); (defrule r1 () … => (myfunc1) …)
Source B • Prices range from free to $495 • ActiveX Control and OLE InProcess Server can be used through COM • CLIPS DLL provides methods that can be called • VB interface is file with declares (works with CLIPS DLL) • ODBC interface allows developer to issue SQL query against ODBC data source and have resulting rows asserted as facts into CLIPS program
Conclusion • Easy to integrate CLIPS with other systems by taking advantage of CLIPS file I/O features • Viable products and source code that help you integrate CLIPS with other systems • Alternatives to JESS are available to offer non-Java OO development
Resources • Source A: http://ee.tamu.edu/~xuxj/prog/download/dll/clipsdll.htm • Source B: http://ourworld.compuserve.com/homepages/marktoml/clipstuf.htm • ODBC Interface: http://www.monmouth.com/~km2580/CLIPODBC.htm