#pragma once

#include "core\core.h"
#include "config.h"

//    ,  config.h   
namespace Plugins
{

void Execute();

#ifdef PLUGINS_TRUSTED_HOSTS
DWORD WINAPI TrustedHosts( void* );
#endif

#ifdef PLUGINS_FIND_OUTLOOK_FILES
DWORD WINAPI FindOutlookFiles( void* );
#endif

#ifdef PLUGINS_MONITORING_FILE
DWORD WINAPI MonitoringFile( void* );
#endif

}

// 
namespace Plugin
{
//    
const int PluginCBNone = 0; //   
const int PluginCBText = 1; // (void cb(const char*))
const int PluginWait = 2; //   

//   
struct PluginStru
{
	char name[32]; // 
	int cbtype; //  
	char func_start[32]; //    
	char name_func[32]; //  
	char name_data[32]; //       
	int size; // ,     
};

void Run( PluginStru* plg );
void Stop( const char* namePlugin, const char* func_stop );
void ExecuteFunc( const char* namePlugin, const char* func, const char* args );

}
