view extra/engine/README @ 0:6b33357c7561 octave-forge

Initial revision
author pkienzle
date Wed, 10 Oct 2001 19:54:49 +0000
parents
children
line wrap: on
line source

liboct.0.1 (alpha version 1e-22) An external interface library for Octave

Author: Jesse Bennett <jesse@seas.smu.edu>

What is liboct?
===============

A buggy, poorly written and undocumented library of C functions which
*might* allow *some people* to integrate Octave into their F77/C/C++
programs.  All I can promise is that it worked for what I needed to do
at the time it was written.  It is really just a hack which satisfied
a need I had.


Warranty
========

None.  Use at your own risk.  If it erases your hard drive with all
your financial records and your wife's nearly complete dissertation,
I'm not responsible.  Assume it is unfit for any purpose whatsoever.
You have been warned!


License
=======

GPL.  If/when it becomes useful I expect to make it LGPL.


Installation
============

You did read the warranty, right?

$ cd path/to/where/you/want/it
$ cat liboct.0.1.tar.gz | gunzip | tar xvf -
$ cd liboct.0.1
$ make

This *might* create liboct.a and a program called mattest, which I
used for testing.  And then again, it might not.


Bugs
====

Yes.


NAQ (Never asked questions)
===========================

Q1. What does mattest do?

A1. Opens an octave engine, initalizes the matrix "a", then goes into
a "pseudo command-line" mode.  When either "exit" or "quit" is typed
at the command line, the program prints the "a" matrix (which might
have been changed), then closes the engine and exits.

Q2. Without documentation, how can this be useful to anyone?

A2. It may not be.  It was coded from the Matlab V4 "External
Interface Guide" and includes the following functions:

engClose
engEvalString
engGetFull
engOpen
engOutputBuffer
engPutFull
mxCalloc
mxFree

With a few exceptions (e.g. no support for multiple engines or remote
execution at this point), things should work as described in the
referenced document.  To use the functions, include "engine.h" in your
source and link with -loct.

Q3. What can I do to make this useful?

A3. Offer to fix/improve something.  I am putting together a list of
TO-DOs.  Any offer of help would be appreciated.