1 //////////////////////////////////////////////////////////////////////
2 //
3 //                             Pixie
4 //
5 // Copyright � 1999 - 2003, Okan Arikan
6 //
7 // Contact: okan@cs.utexas.edu
8 //
9 //	This library is free software; you can redistribute it and/or
10 //	modify it under the terms of the GNU Lesser General Public
11 //	License as published by the Free Software Foundation; either
12 //	version 2.1 of the License, or (at your option) any later version.
13 //
14 //	This library is distributed in the hope that it will be useful,
15 //	but WITHOUT ANY WARRANTY; without even the implied warranty of
16 //	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 //	Lesser General Public License for more details.
18 //
19 //	You should have received a copy of the GNU Lesser General Public
20 //	License along with this library; if not, write to the Free Software
21 //	Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
22 //
23 ///////////////////////////////////////////////////////////////////////
24 ///////////////////////////////////////////////////////////////////////
25 //
26 //  File				:	dlo.h
27 //  Classes				:	-
28 //  Description			:	Defines the interface to a dynamically loaded object
29 //
30 ////////////////////////////////////////////////////////////////////////
31 #ifndef DLO_H
32 #define DLO_H
33 
34 #ifndef LIB_EXPORT
35 #ifdef _WINDOWS
36 #define	LIB_EXPORT				__declspec(dllexport)
37 #else
38 #define	LIB_EXPORT				extern
39 #endif
40 #endif
41 
42 
43 typedef	void		*(*dloInitFunction)(int,float *,float *);
44 typedef	int			(*dloIntersectFunction)(void *,const float *,const float *,float *,float *);
45 typedef	void		(*dloTiniFunction)(void *);
46 
47 extern "C" {
48 	LIB_EXPORT	void		*dloInit(int,float *,float *);
49 	LIB_EXPORT	int			dloIntersect(void *,const float *,const float *,float *,float *);
50 	LIB_EXPORT	void		dloTini(void *);
51 };
52 
53 #endif
54 
55