Project

General

Profile

Actions

Basis of a new plugin » History » Revision 2

« Previous | Revision 2/4 (diff) | Next »
iri, 07/01/2011 12:24 AM


Basis of a new plugin (on MS Windows)

All Scol types and functions are defined in the file header "scol.h", we make these features available including this file.

#include <scol.h>

To initialize the Scol virtual machine, you must add the following line (the variable must be called absolutely "ww ", the latter being used by all functions of the SDK).

//!Scol machine declaration for MM macros
cbmachine ww;

Each plugin needs a function of loading and unloading. These functions are called by the Scol virtual machine, they have a signature set.

/*! 
 * \brief Starting point of the DLL
 */
 extern "C" __declspec (dllexport) 
 int SCOLloadTemplate(mmachine m, cbmachine w)
 {
       // Initializing SDK
     SCOLinitplugin(w);

     // Get Scol window handle (for message callback)
     HScol = (HWND)SCgetExtra("hscol");

     // Display debug message
     MMechostr(MSKDEBUG,"Loading Template DLL ...\n");    
     return 0; 
 }

 /*! 
 * \brief Ending point of the DLL                                            
 */
 extern "C" __declspec (dllexport)
 int SCOLfreeTemplate()
 {
     // Display debug messages
     MMechostr(MSKDEBUG, "Template DLL CLOSED...\n\n" );
     return 0;
 }

To add the plugin to the environment Scol must map the name of the functions of loading and unloading in the file "usm.ini"

plugin plugins/template.dll SCOLloadTemplate SCOLfreeTemplate

Updated by iri almost 13 years ago · 2 revisions