added ifdef to avoid warning (redefinition of DllExport)