00001 /* $NoKeywords: $ */ 00002 /* 00003 // 00004 // Copyright (c) 1993-2012 Robert McNeel & Associates. All rights reserved. 00005 // OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert 00006 // McNeel & Associates. 00007 // 00008 // THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. 00009 // ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF 00010 // MERCHANTABILITY ARE HEREBY DISCLAIMED. 00011 // 00012 // For complete openNURBS copyright information see <http://www.opennurbs.org>. 00013 // 00015 */ 00016 00017 #include "pcl/surface/3rdparty/opennurbs/opennurbs.h" 00018 00019 // opennurbs_dll.cpp : Defines the entry point for the Windows DLL application. 00020 // 00021 00022 #if defined(ON_OS_WINDOWS) && defined(ON_DLL_EXPORTS) 00023 00024 BOOL APIENTRY DllMain( HANDLE hModule, 00025 DWORD ul_reason_for_call, 00026 LPVOID lpReserved 00027 ) 00028 { 00029 static int bRunning = 0; 00030 if ( !bRunning ) 00031 { 00032 bRunning = true; 00033 } 00034 00035 switch( ul_reason_for_call ) { 00036 00037 case DLL_PROCESS_ATTACH: 00038 ON_ClassId::IncrementMark(); // make sure each DLL that each process that 00039 // uses OpenNURBS has a unique mark. 00040 break; 00041 00042 // 16 August 2010 Dale Lear: 00043 // These generate too much noise in the output window 00044 // 00045 //case DLL_THREAD_ATTACH: 00046 // ::OutputDebugStringA("OpenNURBS DllMain() ul_reason_for_call = DLL_THREAD_ATTACH\n"); 00047 // break; 00048 00049 //case DLL_THREAD_DETACH: 00050 // ::OutputDebugStringA("OpenNURBS DllMain() ul_reason_for_call = DLL_THREAD_DETACH\n"); 00051 // break; 00052 00053 //case DLL_PROCESS_DETACH: 00054 // ::OutputDebugStringA("OpenNURBS DllMain() ul_reason_for_call = DLL_PROCESS_DETACH\n"); 00055 // break; 00056 00057 //default: 00058 // ::OutputDebugStringA("OpenNURBS DllMain() ul_reason_for_call = ?\n"); 00059 // break; 00060 } 00061 00062 return true; 00063 } 00064 00065 #endif