#include "c4d_baseplugin.h"
#include "c4d_memory.h"

BaseData::BaseData(void) 
{
}

BaseData::~BaseData(void) 
{
}

void BaseData::Destructor(void) 
{ 
	delete this; 
}

#define Call(fnc) (this->*C4DOS.Ge->fnc)

void* BasePlugin::GetPluginStructure()
{
	return Call(GetPluginStructure)();
}

LONG BasePlugin::GetInfo()
{
	return Call(GetInfo)();
}

Filename BasePlugin::GetFilename()
{
	return Call(GetFilename)();
}

LONG BasePlugin::GetID()
{
	return Call(GetID)();
}

BasePlugin* FindPlugin(LONG id, LONG type)
{
	return (*C4DOS.Ge->FindPlugin)(id, type);
}

BasePlugin*	GetFirstPlugin()
{
	return (*C4DOS.Ge->GetFirstPlugin)();
}
