Skip to content

Instantly share code, notes, and snippets.

@rgm
Created April 1, 2011 21:06
Show Gist options
  • Save rgm/898858 to your computer and use it in GitHub Desktop.
Save rgm/898858 to your computer and use it in GitHub Desktop.
Boilerplate build settings, entry point files, prefix header for Vectorworks SDK plugins
ARCHS = i386
VALID_ARCHS = $(ARCHS)
WRAPPER_EXTENSION = vwlibrary
//
// define VW_SDK_ROOT_PATH for your local filesystem
// to make #include <foo.h> work correctly
//
VW_SDK_ROOT_PATH = ../sdk/vendor/sdk2011/SDKLib
VW_SDK_KERNEL_HEADERS_PATH = $(VW_SDK_ROOT_PATH)/Include/Kernel
VW_SDK_ONLY_MAC_HEADERS_PATH = $(VW_SDK_ROOT_PATH)/Include/OnlyMac
VW_SDK_INTERFACES_HEADER_PATH = $(VW_SDK_ROOT_PATH)/Include/Interfaces
VW_SDK_VWFC_HEADER_PATH = $(VW_SDK_ROOT_PATH)/Include/VWFC
HEADER_SEARCH_PATHS = $(VW_SDK_KERNEL_HEADERS_PATH) $(VW_SDK_ONLY_MAC_HEADERS_PATH) $(VW_SDK_INTERFACES_HEADER_PATH) $(VW_SDK_VWFC_HEADER_PATH)
//#include "Menu.h"
#define REGISTER(x) REGISTER_Extension<x::Definition>(GROUPID_Extension##x, action, pInfo, ioData, cbp, reply)
extern "C" long GS_EXTERNAL_ENTRY plugin_main(long action,
void *pInfo,
long &ioData,
CallBackPtr cbp)
{
::GS_InitializeVCOM(cbp);
gCBP = cbp;
{
using namespace VectorWorks;
VCOMPtr<ISDK> localSDK(IID_SDK);
gSDK = localSDK;
}
long reply = 0L;
using namespace VWFC::PluginSupport;
//REGISTER(Menu);
return reply;
}
#ifdef _DEBUG
#include <GSBug.h>
#define _DEBUG_MEMORY
#define _DO_TIMING
#else
#include <GSRELEASE.h>
#endif
#include <MCCoordTypes.h>
#include <MiniCadHookIntf.h>
#include <GSESetup.h>
#include <MiniCadCallBacks.h>
#include <GSString.h>
#include <GSTypes.h>
#include <MCMatrix.h>
#include <RecordHandler.h>
#include <ExtendedProperties.h>
#include <VWFCLibrary.h>
#include <PluginSupport/VWExtensions.h>
#include <VWInterfaces.h>
using namespace VWFC::Math;
using namespace VWFC::VWObjects;
using namespace VWFC::Tools;
using namespace VWFC::VWUI;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment