Matrix1 Utility Plug-ins

# Matrix1Util_20

This plug-in provides the ability to create pointers to DBPro Basic functions within your code, and to call them.
It also allows you to do the same with external DLLs.
Also included is the ability to create coroutines. Coroutines are a cooperative form of multitasking between different routines in your code. They are NOT multithreading, as that is unsafe within the DBPro runtime.
You simply create a coroutine using a function pointer, and switch between coroutines and the main routine when you decide the time is right. This simplifies the routines you write because you don't need to code the routine to process a certain amount and remember where to continue from when you return - you simply switch to another routine and the system will remember where you are in the current routine when you switch back.

Get DBPro Functions

GET FUNCTION COUNT |
GET FUNCTION NAME$ |
GET PTR TO FUNCTION |
GET PTR TO NEXT FUNCTION |
GET PTR TO PREV FUNCTION |
GET PTR TO THIS FUNCTION |
REGISTER FUNCTION PTR |
UNREGISTER FUNCTION PTR |

Get DLL Functions

DLL LOAD COUNT |
GET PTR TO DLL FUNCTION |
LOAD DLL |
UNLOAD DLL |

Call Functions

CALL FUNCTION NAME |
CALL FUNCTION PTR |
RETURNED BOOLEAN |
RETURNED BYTE |
RETURNED DOUBLE FLOAT |
RETURNED DOUBLE INTEGER |
RETURNED DWORD |
RETURNED FLOAT |
RETURNED INTEGER |
RETURNED STRING$ |
RETURNED WORD |

Function pointer information

DLL FILENAME$ |
DLL HANDLE IS VALID |
FUNCTION PTR IS VALID |

Function pointer behaviour

ALLOW NULL FUNCTION PTR |
SET CALL FUNCTION TUNABLES |

Variable arguments

ARGLIST BOOLEAN |
ARGLIST BYTE |
ARGLIST DOUBLE FLOAT |
ARGLIST DOUBLE INTEGER |
ARGLIST DWORD |
ARGLIST FLOAT |
ARGLIST INTEGER |
ARGLIST STRING$ |
ARGLIST WORD |
OPEN ARGLIST |
RESET ARGLIST |

Coroutines

COROUTINE ACTIVE | - Determine whether a Coroutine is active
COROUTINE EXIST | - Determine if a Coroutine exists
COROUTINE RESERVED |
CREATE COROUTINE | - Create a Coroutine
CURRENT COROUTINE | - Get the ID of the current Coroutine
DELETE COROUTINE | - Delete a Coroutine
FIND FREE COROUTINE |
NEXT COROUTINE | - Switch to the next higher numbered Coroutine
RELEASE RESERVED COROUTINE |
RESERVE FREE COROUTINE |
RESTART COROUTINE | - Restart an inactive Coroutine
SET COROUTINE END STATE |
SWITCH TO COROUTINE | - Switch to another Coroutine

Go back to ...

Matrix1 Utils Main Index
Matrix1 Utils Command List
Commands Menu
Main Menu

Copyright © Ian Mold - Matrix1 Software 2006 - 2011