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