|
From: <he...@us...> - 2009-03-17 18:03:58
|
Revision: 56
http://simspark.svn.sourceforge.net/simspark/?rev=56&view=rev
Author: hedayat
Date: 2009-03-17 18:03:47 +0000 (Tue, 17 Mar 2009)
Log Message:
-----------
ruby 1.9 fix
latest devil fix
many fixes to support windows builds
Modified Paths:
--------------
trunk/spark/CMakeLists.txt
trunk/spark/ChangeLog
trunk/spark/lib/CMakeLists.txt
trunk/spark/lib/kerosin/CMakeLists.txt
trunk/spark/lib/kerosin/imageserver/imageserver.h
trunk/spark/lib/kerosin/kerosin.h
trunk/spark/lib/oxygen/CMakeLists.txt
trunk/spark/lib/oxygen/agentaspect/agentaspect.h
trunk/spark/lib/oxygen/agentaspect/effector.h
trunk/spark/lib/oxygen/agentaspect/perceptor.h
trunk/spark/lib/oxygen/controlaspect/controlaspect.h
trunk/spark/lib/oxygen/gamecontrolserver/behavior.h
trunk/spark/lib/oxygen/gamecontrolserver/gamecontrolserver.h
trunk/spark/lib/oxygen/gamecontrolserver/predicate.h
trunk/spark/lib/oxygen/geometryserver/geometryserver.h
trunk/spark/lib/oxygen/geometryserver/indexbuffer.h
trunk/spark/lib/oxygen/geometryserver/meshimporter.h
trunk/spark/lib/oxygen/geometryserver/stdmeshimporter.h
trunk/spark/lib/oxygen/geometryserver/trimesh.h
trunk/spark/lib/oxygen/monitorserver/custommonitor.h
trunk/spark/lib/oxygen/monitorserver/monitorcmdparser.h
trunk/spark/lib/oxygen/monitorserver/monitorserver.h
trunk/spark/lib/oxygen/monitorserver/monitorsystem.h
trunk/spark/lib/oxygen/oxygen.h
trunk/spark/lib/oxygen/physicsserver/angularmotor.h
trunk/spark/lib/oxygen/physicsserver/balljoint.h
trunk/spark/lib/oxygen/physicsserver/body.h
trunk/spark/lib/oxygen/physicsserver/bodycontroller.h
trunk/spark/lib/oxygen/physicsserver/boxcollider.h
trunk/spark/lib/oxygen/physicsserver/ccylindercollider.h
trunk/spark/lib/oxygen/physicsserver/collider.h
trunk/spark/lib/oxygen/physicsserver/collisionhandler.h
trunk/spark/lib/oxygen/physicsserver/contactjointhandler.h
trunk/spark/lib/oxygen/physicsserver/dragcontroller.h
trunk/spark/lib/oxygen/physicsserver/fixedjoint.h
trunk/spark/lib/oxygen/physicsserver/hinge2joint.h
trunk/spark/lib/oxygen/physicsserver/hingejoint.h
trunk/spark/lib/oxygen/physicsserver/joint.h
trunk/spark/lib/oxygen/physicsserver/odeobject.h
trunk/spark/lib/oxygen/physicsserver/physicsserver.h
trunk/spark/lib/oxygen/physicsserver/planecollider.h
trunk/spark/lib/oxygen/physicsserver/raycollider.h
trunk/spark/lib/oxygen/physicsserver/recorderhandler.h
trunk/spark/lib/oxygen/physicsserver/sliderjoint.h
trunk/spark/lib/oxygen/physicsserver/space.h
trunk/spark/lib/oxygen/physicsserver/spherecollider.h
trunk/spark/lib/oxygen/physicsserver/transformcollider.h
trunk/spark/lib/oxygen/physicsserver/universaljoint.h
trunk/spark/lib/oxygen/physicsserver/velocitycontroller.h
trunk/spark/lib/oxygen/physicsserver/world.h
trunk/spark/lib/salt/CMakeLists.txt
trunk/spark/lib/salt/bounds.h
trunk/spark/lib/salt/defines.h
trunk/spark/lib/salt/fileclasses.h
trunk/spark/lib/salt/frustum.h
trunk/spark/lib/salt/matrix.h
trunk/spark/lib/salt/path.h
trunk/spark/lib/salt/plane.h
trunk/spark/lib/salt/random.h
trunk/spark/lib/salt/rect.h
trunk/spark/lib/salt/sharedlibrary.h
trunk/spark/lib/salt/tvector.h
trunk/spark/lib/salt/vector.h
trunk/spark/lib/zeitgeist/CMakeLists.txt
trunk/spark/lib/zeitgeist/class.h
trunk/spark/lib/zeitgeist/core.h
trunk/spark/lib/zeitgeist/corecontext.h
trunk/spark/lib/zeitgeist/fileserver/fileserver.h
trunk/spark/lib/zeitgeist/fileserver/filesystem.h
trunk/spark/lib/zeitgeist/leaf.h
trunk/spark/lib/zeitgeist/logserver/logserver.h
trunk/spark/lib/zeitgeist/node.h
trunk/spark/lib/zeitgeist/object.h
trunk/spark/lib/zeitgeist/parameterlist.h
trunk/spark/lib/zeitgeist/randomserver/randomserver.h
trunk/spark/lib/zeitgeist/scriptserver/gcvalue.h
trunk/spark/lib/zeitgeist/scriptserver/rubywrapper.cpp
trunk/spark/lib/zeitgeist/scriptserver/scriptserver.h
trunk/spark/lib/zeitgeist/zeitgeist.h
trunk/spark/sparkconfig.h.cmake
trunk/spark/utility/rcssnet/CMakeLists.txt
trunk/spark/utility/rcssnet/addr.hpp
trunk/spark/utility/rcssnet/exception.hpp
trunk/spark/utility/rcssnet/handler.hpp
trunk/spark/utility/rcssnet/socket.hpp
trunk/spark/utility/rcssnet/tcpsocket.hpp
trunk/spark/utility/rcssnet/udpsocket.hpp
Added Paths:
-----------
trunk/spark/lib/kerosin/kerosin_defines.h
trunk/spark/lib/oxygen/oxygen_defines.h
trunk/spark/lib/salt/salt_defines.h
trunk/spark/lib/zeitgeist/zeitgeist_defines.h
trunk/spark/utility/rcssnet/rcssnet3D_defines.h
Modified: trunk/spark/CMakeLists.txt
===================================================================
--- trunk/spark/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -38,9 +38,6 @@
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/)
set(ENV{SDLDIR} $ENV{SDLDIR} C:/library/SDL/ "C:/Program Files/SDL/" C:/SDL/)
-if(WIN32)
- set(Boost_USE_STATIC_LIBS ON)
-endif(WIN32)
find_package(Ruby REQUIRED)
find_package(Freetype REQUIRED)
find_package(DevIL REQUIRED)
@@ -88,6 +85,9 @@
endif (RESOLV_LIB_REQ)
endif (NOT FUNC_HSTRERROR_EXISTS)
+if (WIN32)
+ set(NET_LIBS ${NET_LIBS} WS2_32.lib)
+endif (WIN32)
########## add extra flags ##########
if(NOT CMAKE_BUILD_TYPE)
@@ -97,8 +97,10 @@
add_definitions(-DHAVE_CONFIG_H)
include_directories(${CMAKE_BINARY_DIR})
if (UNIX)
- set(CMAKE_CXX_FLAGS "-Wno-deprecated" CACHE
+ set(CMAKE_CXX_FLAGS $ENV{CXXFLAGS} CACHE
STRING "Common C++ compiler flags" FORCE)
+ set(CMAKE_C_FLAGS $ENV{CFLAGS} CACHE
+ STRING "Common C compiler flags" FORCE)
set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -W -Wall -Woverloaded-virtual" CACHE
STRING "C++ compiler flags for Debug builds" FORCE)
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE
@@ -112,14 +114,18 @@
set(CMAKE_SHARED_MODULE_PREFIX "")
mark_as_advanced(BINDIR LIBDIR DATADIR INCLUDEDIR)
+set(BUILD_SHARED_LIBS TRUE)
+if (BUILD_SHARED_LIBS)
+ set(SHARED_LIB_COMPILE 1)
+endif(BUILD_SHARED_LIBS)
if(WIN32)
- add_definitions(-D_CRT_SECURE_NO_WARNINGS)
- include_directories(${Boost_INCLUDE_DIRS} ${ODE_INCLUDE_DIR}
- ${CMAKE_SOURCE_DIR}/windows/include)
- set(BUILD_SHARED_LIBS FALSE)
-else(WIN32)
- set(BUILD_SHARED_LIBS TRUE)
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS -DBOOST_ALL_DYN_LINK)
+ include_directories(${Boost_INCLUDE_DIRS} ${ODE_INCLUDE_DIR}
+ ${CMAKE_SOURCE_DIR}/windows/include)
+ if(MSVC)
+ add_definitions(/Gm /Zi /GL)
+ endif(MSVC)
endif(WIN32)
########## library version numbers ##########
@@ -190,7 +196,19 @@
set(CPACK_PACKAGE_VERSION ${PACKAGE_VERSION})
set(CPACK_SOURCE_PACKAGE_FILE_NAME
${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION})
+
+set(CPACK_PACKAGE_VENDOR "RoboCup Soccer Server 3D Maintenance Group")
+set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "A generic physical simulation system")
+set(CPACK_PACKAGE_INSTALL_DIRECTORY "simspark")
+set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
+set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README")
+set(CPACK_NSIS_HELP_LINK "TODO:simspark wiki link")
+set(CPACK_NSIS_URL_INFO_ABOUT "http://simspark.sourceforge.net")
+set(CPACK_NSIS_CONTACT "sim...@li...")
+set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "RequestExecutionLevel user")
+
include(CPack)
#original Makefile.am contents follow:
Modified: trunk/spark/ChangeLog
===================================================================
--- trunk/spark/ChangeLog 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/ChangeLog 2009-03-17 18:03:47 UTC (rev 56)
@@ -1,3 +1,11 @@
+2009-03-17 Hedayat Vatankhah <he...@gr...>
+
+ * lib/kerosin/imageserver/imageserver.h (ImageServer):
+ - added a fix for the latest DevIL package
+
+ * lib/zeitgeist/scriptserver/rubywrapper.cpp:
+ - improved ruby 1.9 compatibility
+
2009-03-07 Hedayat Vatankhah <he...@gr...>
* test/scenetest/CMakeLists.txt:
Modified: trunk/spark/lib/CMakeLists.txt
===================================================================
--- trunk/spark/lib/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -1,18 +1,18 @@
include_directories(${CMAKE_SOURCE_DIR}/utility ${Boost_INCLUDE_DIRS}
${ODE_INCLUDE_DIR})
+link_directories(${Boost_LIBRARY_DIRS})
+
if (USE_COREFOUNDATION)
add_definitions(-DUSE_COREFOUNDATION)
endif (USE_COREFOUNDATION)
-if (APPLE)
- if (USE_COREFOUNDATION)
- set(salt_require_libs /System/Library/Frameworks/CoreFoundation.framework)
- endif (USE_COREFOUNDATION)
- set(zeitgeist_require_libs salt ${salt_require_libs})
- set(oxygen_require_libs zeitgeist ${zeitgeist_require_libs})
- set(kerosin_require_libs oxygen ${oxygen_require_libs})
-endif (APPLE)
+if (USE_COREFOUNDATION)
+ set(salt_require_libs /System/Library/Frameworks/CoreFoundation.framework)
+endif (USE_COREFOUNDATION)
+set(zeitgeist_require_libs salt ${salt_require_libs})
+set(oxygen_require_libs zeitgeist ${zeitgeist_require_libs})
+set(kerosin_require_libs oxygen ${oxygen_require_libs})
add_subdirectory(salt)
add_subdirectory(zeitgeist)
Modified: trunk/spark/lib/kerosin/CMakeLists.txt
===================================================================
--- trunk/spark/lib/kerosin/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/kerosin/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -13,6 +13,7 @@
inputserver/inputitem.h
inputserver/input.h
kerosin.h
+ kerosin_defines.h
materialserver/material.h
materialserver/materialserver.h
sceneserver/axis.h
@@ -116,7 +117,8 @@
renderserver/customrender_c.cpp
)
-include_directories(${CMAKE_SOURCE_DIR}/lib ${FREETYPE_INCLUDE_DIRS} ${DevIL_INCLUDE_DIR} ${SDL_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR})
+include_directories(${CMAKE_SOURCE_DIR}/lib ${FREETYPE_INCLUDE_DIRS}
+ ${DevIL_INCLUDE_DIR} ${SDL_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR})
add_library(kerosin ${kerosin_LIB_SRCS} ${kerosin_LIB_HDRS})
Modified: trunk/spark/lib/kerosin/imageserver/imageserver.h
===================================================================
--- trunk/spark/lib/kerosin/imageserver/imageserver.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/kerosin/imageserver/imageserver.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -27,7 +27,10 @@
#endif
#ifdef HAVE_IL_IL_H
#include <IL/il.h>
+#ifndef IL_ILBM
+#define IL_ILBM IL_LBM
#endif
+#endif
#include <zeitgeist/class.h>
@@ -66,7 +69,7 @@
eICO = IL_ICO,
eJPG = IL_JPG,
eJFIF = IL_JFIF,
- eLBM = IL_LBM,
+ eLBM = IL_ILBM,
ePCD = IL_PCD,
ePCX = IL_PCX,
ePIC = IL_PIC,
Modified: trunk/spark/lib/kerosin/kerosin.h
===================================================================
--- trunk/spark/lib/kerosin/kerosin.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/kerosin/kerosin.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -29,6 +29,7 @@
#ifndef KEROSIN_KEROSIN_H
#define KEROSIN_KEROSIN_H
+#include "kerosin_defines.h"
#include "soundserver/soundserver.h"
#include "imageserver/imageserver.h"
#include "fontserver/fontserver.h"
@@ -74,7 +75,7 @@
* registers all internal classes and automatically runs the default init
* script 'sys/script/default.rb' if it exists.
*/
-class Kerosin
+class KEROSIN_API Kerosin
{
//
// types
Added: trunk/spark/lib/kerosin/kerosin_defines.h
===================================================================
--- trunk/spark/lib/kerosin/kerosin_defines.h (rev 0)
+++ trunk/spark/lib/kerosin/kerosin_defines.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -0,0 +1,32 @@
+/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*-
+
+ this file is part of rcssserver3D
+ Copyright (C) 2009 RoboCup Soccer Server 3D Maintenance Group
+ $Id$
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#ifndef KEROSIN_KEROSIN_DEFINES_H
+#define KEROSIN_KEROSIN_DEFINES_H
+
+#include <salt/defines.h>
+
+#ifdef kerosin_EXPORTS
+#define KEROSIN_API API_EXPORT
+#else
+#define KEROSIN_API API_IMPORT
+#endif
+
+#endif //KEROSIN_KEROSIN_DEFINES_H
Property changes on: trunk/spark/lib/kerosin/kerosin_defines.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Modified: trunk/spark/lib/oxygen/CMakeLists.txt
===================================================================
--- trunk/spark/lib/oxygen/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -13,6 +13,7 @@
gamecontrolserver/actionobject.h
gamecontrolserver/behavior.h
oxygen.h
+ oxygen_defines.h
physicsserver/body.h
physicsserver/bodycontroller.h
physicsserver/boxcollider.h
Modified: trunk/spark/lib/oxygen/agentaspect/agentaspect.h
===================================================================
--- trunk/spark/lib/oxygen/agentaspect/agentaspect.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/agentaspect/agentaspect.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_AGENTASPECT_H
#define OXYGEN_AGENTASPECT_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/transform.h>
#include <oxygen/gamecontrolserver/actionobject.h>
#include <oxygen/gamecontrolserver/baseparser.h>
@@ -34,7 +35,7 @@
}
#endif
-class AgentAspect : public Transform
+class OXYGEN_API AgentAspect : public Transform
{
public:
AgentAspect();
Modified: trunk/spark/lib/oxygen/agentaspect/effector.h
===================================================================
--- trunk/spark/lib/oxygen/agentaspect/effector.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/agentaspect/effector.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_EFFECTOR_H
#define OXYGEN_EFFECTOR_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/basenode.h>
#include <oxygen/gamecontrolserver/baseparser.h>
@@ -30,7 +31,7 @@
class ActionObject;
class AgentAspect;
-class Effector : public BaseNode
+class OXYGEN_API Effector : public BaseNode
{
public:
Effector() : BaseNode() {};
Modified: trunk/spark/lib/oxygen/agentaspect/perceptor.h
===================================================================
--- trunk/spark/lib/oxygen/agentaspect/perceptor.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/agentaspect/perceptor.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,13 +22,14 @@
#ifndef OXYGEN_PERCEPTOR_H
#define OXYGEN_PERCEPTOR_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/basenode.h>
#include <oxygen/gamecontrolserver/baseparser.h>
namespace oxygen
{
-class Perceptor : public oxygen::BaseNode
+class OXYGEN_API Perceptor : public oxygen::BaseNode
{
public:
Modified: trunk/spark/lib/oxygen/controlaspect/controlaspect.h
===================================================================
--- trunk/spark/lib/oxygen/controlaspect/controlaspect.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/controlaspect/controlaspect.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,13 +22,14 @@
#ifndef OXYGEN_CONTROLASPECT_H
#define OXYGEN_CONTROLASPECT_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/basenode.h>
namespace oxygen
{
class Scene;
-class ControlAspect : public BaseNode
+class OXYGEN_API ControlAspect : public BaseNode
{
public:
ControlAspect();
Modified: trunk/spark/lib/oxygen/gamecontrolserver/behavior.h
===================================================================
--- trunk/spark/lib/oxygen/gamecontrolserver/behavior.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/gamecontrolserver/behavior.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#define OXYGEN_BEHAVIOR_H
#include <string>
+#include <oxygen/oxygen_defines.h>
#include <oxygen/gamecontrolserver/predicate.h>
#include <oxygen/simulationserver/traincontrol.h>
@@ -32,7 +33,7 @@
derivated from this class, and overload 'Init' & 'Think'
to implement its special behavior.
*/
-class Behavior : public zeitgeist::Leaf
+class OXYGEN_API Behavior : public zeitgeist::Leaf
{
public:
/** called once when the initially connected to the server */
Modified: trunk/spark/lib/oxygen/gamecontrolserver/gamecontrolserver.h
===================================================================
--- trunk/spark/lib/oxygen/gamecontrolserver/gamecontrolserver.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/gamecontrolserver/gamecontrolserver.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -24,6 +24,7 @@
#include "actionobject.h"
#include "baseparser.h"
+#include <oxygen/oxygen_defines.h>
#include <zeitgeist/class.h>
#include <zeitgeist/node.h>
@@ -33,7 +34,7 @@
class Effector;
class Scene;
-class GameControlServer : public zeitgeist::Node
+class OXYGEN_API GameControlServer : public zeitgeist::Node
{
public:
Modified: trunk/spark/lib/oxygen/gamecontrolserver/predicate.h
===================================================================
--- trunk/spark/lib/oxygen/gamecontrolserver/predicate.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/gamecontrolserver/predicate.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -28,6 +28,7 @@
#include <boost/any.hpp>
#include <salt/vector.h>
#include <zeitgeist/logserver/logserver.h>
+#include <oxygen/oxygen_defines.h>
namespace oxygen
{
@@ -46,7 +47,7 @@
agent. Again, the Perceptor is independent from the format used to
transmit its data to the agent.
*/
-class Predicate
+class OXYGEN_API Predicate
{
public:
/** \class Iterator encapsulates a
Modified: trunk/spark/lib/oxygen/geometryserver/geometryserver.h
===================================================================
--- trunk/spark/lib/oxygen/geometryserver/geometryserver.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/geometryserver/geometryserver.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_GEOMETRYSERVER_H
#define OXYGEN_GEOMETRYSERVER_H
+#include <oxygen/oxygen_defines.h>
#include <zeitgeist/class.h>
#include <zeitgeist/node.h>
#include "meshexporter.h"
@@ -34,7 +35,7 @@
of plugins to import or generate them. Triangle meshes are used
for collision detection and rendering.
*/
-class GeometryServer : public zeitgeist::Node
+class OXYGEN_API GeometryServer : public zeitgeist::Node
{
protected:
typedef std::map<std::string, boost::shared_ptr<TriMesh> > TMeshMap;
Modified: trunk/spark/lib/oxygen/geometryserver/indexbuffer.h
===================================================================
--- trunk/spark/lib/oxygen/geometryserver/indexbuffer.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/geometryserver/indexbuffer.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_INDEXBUFFER_H
#define OXYGEN_INDEXBUFFER_H
+#include <oxygen/oxygen_defines.h>
#include <boost/shared_array.hpp>
namespace oxygen
@@ -31,7 +32,7 @@
vertexbuffer to describe a set of triangles. It is used together
with the StaticMesh class
*/
-class IndexBuffer
+class OXYGEN_API IndexBuffer
{
public:
IndexBuffer();
Modified: trunk/spark/lib/oxygen/geometryserver/meshimporter.h
===================================================================
--- trunk/spark/lib/oxygen/geometryserver/meshimporter.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/geometryserver/meshimporter.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_MESHIMPORTER_H
#define OXYGEN_MESHIMPORTER_H
+#include <oxygen/oxygen_defines.h>
#include <zeitgeist/class.h>
#include <zeitgeist/node.h>
#include "trimesh.h"
@@ -33,7 +34,7 @@
or generate trimeshes. MeshImporter classes are registered to the
GeometryServer
*/
-class MeshImporter : public zeitgeist::Leaf
+class OXYGEN_API MeshImporter : public zeitgeist::Leaf
{
public:
MeshImporter() : Leaf() {};
Modified: trunk/spark/lib/oxygen/geometryserver/stdmeshimporter.h
===================================================================
--- trunk/spark/lib/oxygen/geometryserver/stdmeshimporter.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/geometryserver/stdmeshimporter.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_STDMESHIMPORTER
#define OXYGEN_STDMESHIMPORTER
+#include <oxygen/oxygen_defines.h>
#include "meshimporter.h"
namespace oxygen
@@ -29,7 +30,7 @@
/** \class StdMeshImporter is a MeshImporter that generates a standard
set of meshes. These are spheres, boxes and capped cylinders.
*/
-class StdMeshImporter : public MeshImporter
+class OXYGEN_API StdMeshImporter : public MeshImporter
{
public:
StdMeshImporter();
@@ -56,7 +57,7 @@
/** constructs a unit capped cylinder */
boost::shared_ptr<TriMesh> UnitCCylinder
(const zeitgeist::ParameterList& parameter);
-
+
/** constructs a flat unit cylinder */
boost::shared_ptr<TriMesh> UnitCylinder();
};
Modified: trunk/spark/lib/oxygen/geometryserver/trimesh.h
===================================================================
--- trunk/spark/lib/oxygen/geometryserver/trimesh.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/geometryserver/trimesh.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -27,6 +27,7 @@
#include <boost/shared_array.hpp>
#include <boost/shared_ptr.hpp>
#include <string>
+#include <oxygen/oxygen_defines.h>
namespace oxygen
{
@@ -41,7 +42,7 @@
vector. Indeces are stored using the IndexBuffer class as as list
of unsigned int values.
*/
-class TriMesh
+class OXYGEN_API TriMesh
{
public:
struct Face
Modified: trunk/spark/lib/oxygen/monitorserver/custommonitor.h
===================================================================
--- trunk/spark/lib/oxygen/monitorserver/custommonitor.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/monitorserver/custommonitor.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -23,12 +23,13 @@
#define OXYGEN_CUSTOMMONITOR_H
#include <zeitgeist/leaf.h>
+#include <oxygen/oxygen_defines.h>
#include <oxygen/gamecontrolserver/predicate.h>
namespace oxygen
{
-class CustomMonitor : public zeitgeist::Leaf
+class OXYGEN_API CustomMonitor : public zeitgeist::Leaf
{
public:
CustomMonitor();
Modified: trunk/spark/lib/oxygen/monitorserver/monitorcmdparser.h
===================================================================
--- trunk/spark/lib/oxygen/monitorserver/monitorcmdparser.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/monitorserver/monitorcmdparser.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -23,12 +23,13 @@
#define OXYGEN_MONITORCMDPARSER_H
#include <zeitgeist/leaf.h>
+#include <oxygen/oxygen_defines.h>
#include <oxygen/gamecontrolserver/predicate.h>
namespace oxygen
{
-class MonitorCmdParser : public zeitgeist::Leaf
+class OXYGEN_API MonitorCmdParser : public zeitgeist::Leaf
{
public:
MonitorCmdParser();
Modified: trunk/spark/lib/oxygen/monitorserver/monitorserver.h
===================================================================
--- trunk/spark/lib/oxygen/monitorserver/monitorserver.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/monitorserver/monitorserver.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_MONITORSERVER_H
#define OXYGEN_MONITORSERVER_H
+#include <oxygen/oxygen_defines.h>
#include <zeitgeist/class.h>
#include <zeitgeist/node.h>
#include "monitorsystem.h"
@@ -29,8 +30,8 @@
namespace oxygen
{
class SimulationServer;
-
-class MonitorServer : public zeitgeist::Node
+
+class OXYGEN_API MonitorServer : public zeitgeist::Node
{
public:
MonitorServer();
@@ -79,7 +80,7 @@
void CollectItemPredicates(bool initial, PredicateList& pList);
virtual void OnLink();
-
+
private:
/** a cached reference to the SimulationServer */
CachedPath<SimulationServer> mSimulationServer;
Modified: trunk/spark/lib/oxygen/monitorserver/monitorsystem.h
===================================================================
--- trunk/spark/lib/oxygen/monitorserver/monitorsystem.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/monitorserver/monitorsystem.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -24,12 +24,13 @@
#include <zeitgeist/class.h>
#include <zeitgeist/node.h>
+#include <oxygen/oxygen_defines.h>
#include <oxygen/gamecontrolserver/predicate.h>
namespace oxygen
{
-class MonitorSystem : public zeitgeist::Node
+class OXYGEN_API MonitorSystem : public zeitgeist::Node
{
public:
MonitorSystem();
Modified: trunk/spark/lib/oxygen/oxygen.h
===================================================================
--- trunk/spark/lib/oxygen/oxygen.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/oxygen.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_OXYGEN_H
#define OXYGEN_OXYGEN_H
+#include "oxygen_defines.h"
#include "agentaspect/agentaspect.h"
#include "agentaspect/effector.h"
#include "agentaspect/perceptor.h"
@@ -101,7 +102,7 @@
/** This is the main class, which initializes the Oxygen framework. It
registers all internal classes.
*/
-class Oxygen
+class OXYGEN_API Oxygen
{
public:
/** initializes the oxygen framework \param zg is a reference to
Added: trunk/spark/lib/oxygen/oxygen_defines.h
===================================================================
--- trunk/spark/lib/oxygen/oxygen_defines.h (rev 0)
+++ trunk/spark/lib/oxygen/oxygen_defines.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -0,0 +1,32 @@
+/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*-
+
+ this file is part of rcssserver3D
+ Copyright (C) 2009 RoboCup Soccer Server 3D Maintenance Group
+ $Id$
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#ifndef OXYGEN_OXYGEN_DEFINES_H
+#define OXYGEN_OXYGEN_DEFINES_H
+
+#include <salt/defines.h>
+
+#ifdef oxygen_EXPORTS
+#define OXYGEN_API API_EXPORT
+#else
+#define OXYGEN_API API_IMPORT
+#endif
+
+#endif //OXYGEN_OXYGEN_DEFINES_H
Property changes on: trunk/spark/lib/oxygen/oxygen_defines.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Modified: trunk/spark/lib/oxygen/physicsserver/angularmotor.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/angularmotor.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/angularmotor.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,6 +20,7 @@
#ifndef OXYGEN_ANGULARMOTOR_H
#define OXYGEN_ANGULARMOTOR_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
@@ -31,7 +32,7 @@
up to three axes, allowing torque motors and stops to be set for
rotation about those axes.
*/
-class AngularMotor : public Joint
+class OXYGEN_API AngularMotor : public Joint
{
public:
enum EMotorMode
Modified: trunk/spark/lib/oxygen/physicsserver/balljoint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/balljoint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/balljoint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,13 +20,14 @@
#ifndef OXYGEN_BALLJOINT_H
#define OXYGEN_BALLJOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
{
class Body;
-class BallJoint : public Joint
+class OXYGEN_API BallJoint : public Joint
{
public:
BallJoint();
Modified: trunk/spark/lib/oxygen/physicsserver/body.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/body.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/body.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_BODY_H
#define OXYGEN_BODY_H
+#include <oxygen/oxygen_defines.h>
#include "odeobject.h"
namespace oxygen
@@ -35,7 +36,7 @@
usually constant over time: Mass, Center of mass and Inertia
matrix (mass distribution matrix)
*/
-class Body : public ODEObject
+class OXYGEN_API Body : public ODEObject
{
//
// Functions
@@ -319,10 +320,10 @@
protected:
/** the managed ode body */
dBodyID mODEBody;
-
+
/** the total mass translation */
salt::Vector3f mMassTrans;
-
+
/** flag whether mass has been transformed */
bool mMassTransformed;
};
Modified: trunk/spark/lib/oxygen/physicsserver/bodycontroller.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/bodycontroller.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/bodycontroller.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_BODYCONTROLLER_H
#define OXYGEN_BODYCONTROLLER_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/basenode.h>
namespace oxygen
@@ -31,7 +32,7 @@
/** \class BodyController is a baseclass for nodes that control the
motion of an associated body.
*/
-class BodyController : public BaseNode
+class OXYGEN_API BodyController : public BaseNode
{
public:
BodyController() : BaseNode() {}
Modified: trunk/spark/lib/oxygen/physicsserver/boxcollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/boxcollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/boxcollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_BOXCOLLIDER_H
#define OXYGEN_BOXCOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -29,7 +30,7 @@
/** BoxCollider encapsulates an ODE box geometry object.
*/
-class BoxCollider : public Collider
+class OXYGEN_API BoxCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/ccylindercollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/ccylindercollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/ccylindercollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_CCYLINDERCOLLIDER_H
#define OXYGEN_CCYLINDERCOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -32,7 +33,7 @@
half-sphere caps at its ends. This feature makes the internal
collision detection code particularly fast and accurate.
*/
-class CCylinderCollider : public Collider
+class OXYGEN_API CCylinderCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/collider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/collider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/collider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -25,6 +25,7 @@
#include "odeobject.h"
#include <string>
#include <set>
+#include <oxygen/oxygen_defines.h>
namespace oxygen
{
@@ -41,7 +42,7 @@
bodies. A body and a geom together represent all the properties of
the simulated object.
*/
-class Collider : public ODEObject
+class OXYGEN_API Collider : public ODEObject
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/collisionhandler.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/collisionhandler.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/collisionhandler.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -23,6 +23,7 @@
#define OXYGEN_COLLISIONHANDLER_H
#include <oxygen/sceneserver/basenode.h>
+#include <oxygen/oxygen_defines.h>
#include "odewrapper.h"
namespace oxygen
@@ -40,7 +41,7 @@
an ODE contact joint, covering the most common response to a
collision.
*/
-class CollisionHandler : public BaseNode
+class OXYGEN_API CollisionHandler : public BaseNode
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/contactjointhandler.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/contactjointhandler.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/contactjointhandler.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_CONTACTJOINTHANDLER_H
#define OXYGEN_CONTACTJOINTHANDLER_H
+#include <oxygen/oxygen_defines.h>
#include "collisionhandler.h"
namespace oxygen
@@ -31,7 +32,7 @@
ODE contact joint between the two bodies associated with the two
affected collision geoms.
*/
-class ContactJointHandler : public CollisionHandler
+class OXYGEN_API ContactJointHandler : public CollisionHandler
{
public:
ContactJointHandler();
Modified: trunk/spark/lib/oxygen/physicsserver/dragcontroller.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/dragcontroller.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/dragcontroller.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,6 +20,7 @@
#ifndef OXYGEN_DRAGCONTROLLER_H
#define OXYGEN_DRAGCONTROLLER_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/physicsserver/bodycontroller.h>
namespace oxygen
@@ -28,7 +29,7 @@
/** \class DragController is a BodyController that applies a linear
and angular drag the controlled body.
*/
-class DragController : public BodyController
+class OXYGEN_API DragController : public BodyController
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/fixedjoint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/fixedjoint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/fixedjoint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,6 +20,7 @@
#ifndef OXYGEN_FIXEDJOINT_H
#define OXYGEN_FIXEDJOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
@@ -28,14 +29,14 @@
orientation between two bodies, or between a body and the static
environment.
*/
-class FixedJoint : public Joint
+class OXYGEN_API FixedJoint : public Joint
{
public:
FixedJoint();
virtual ~FixedJoint();
- /** Call this on the fixed joint after it has been attached to remember
- the current desired relative offset and desired relative rotation
+ /** Call this on the fixed joint after it has been attached to remember
+ the current desired relative offset and desired relative rotation
between the bodies. */
void SetFixed();
Modified: trunk/spark/lib/oxygen/physicsserver/hinge2joint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/hinge2joint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/hinge2joint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,13 +20,14 @@
#ifndef OXYGEN_HINGE2JOINT_H
#define OXYGEN_HINGE2JOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
{
class Body;
-class Hinge2Joint : public Joint
+class OXYGEN_API Hinge2Joint : public Joint
{
public:
Hinge2Joint();
Modified: trunk/spark/lib/oxygen/physicsserver/hingejoint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/hingejoint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/hingejoint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,13 +20,14 @@
#ifndef OXYGEN_HINGEJOINT_H
#define OXYGEN_HINGEJOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
{
class Body;
-class HingeJoint : public Joint
+class OXYGEN_API HingeJoint : public Joint
{
public:
HingeJoint();
Modified: trunk/spark/lib/oxygen/physicsserver/joint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/joint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/joint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_JOINT_H
#define OXYGEN_JOINT_H
+#include <oxygen/oxygen_defines.h>
#include "odeobject.h"
namespace oxygen
@@ -46,7 +47,7 @@
rates) directly, instead you must set the corresponding body
positions and velocities.
*/
-class Joint : public ODEObject
+class OXYGEN_API Joint : public ODEObject
{
public:
enum EBodyIndex
@@ -136,10 +137,10 @@
salt::Vector3f GetFeedbackTorque(EBodyIndex idx) const;
/** sets the fudgefactor parameter, making this value too small can
- prevent the motor from being able to move the joint away from
- a stop
+ prevent the motor from being able to move the joint away from
+ a stop
*/
- void SetFudgeFactor(EAxisIndex idx, float fudge_factor);
+ void SetFudgeFactor(EAxisIndex idx, float fudge_factor);
/** returns the fudgefactor paramter */
float GetFudgeFactor(EAxisIndex idx) const;
Modified: trunk/spark/lib/oxygen/physicsserver/odeobject.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/odeobject.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/odeobject.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -23,6 +23,7 @@
#ifndef OXYGEN_ODEOBJECT_H
#define OXYGEN_ODEOBJECT_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/sceneserver/basenode.h>
#include "odewrapper.h"
@@ -33,7 +34,7 @@
/** ODEObject is the base of all classes encapsulating ODE concepts
*/
-class ODEObject : public BaseNode
+class OXYGEN_API ODEObject : public BaseNode
{
public:
//
Modified: trunk/spark/lib/oxygen/physicsserver/physicsserver.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/physicsserver.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/physicsserver.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -24,7 +24,7 @@
#include <zeitgeist/class.h>
#include <zeitgeist/leaf.h>
-//#include <ode/ode.h>
+#include <oxygen/oxygen_defines.h>
#include "odewrapper.h"
namespace oxygen
@@ -32,7 +32,7 @@
class Body;
class Collider;
-class PhysicsServer : public zeitgeist::Leaf
+class OXYGEN_API PhysicsServer : public zeitgeist::Leaf
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/planecollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/planecollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/planecollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_PLANECOLLIDER_H
#define OXYGEN_PLANECOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -34,7 +35,7 @@
words it is assumed that the plane is always part of the static
environment and not tied to any movable object.
*/
-class PlaneCollider : public Collider
+class OXYGEN_API PlaneCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/raycollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/raycollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/raycollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_RAYCOLLIDER_H
#define OXYGEN_RAYCOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -34,7 +35,7 @@
* from the geom's position and extends in the direction of the geom's
* local Z-axis.
*/
-class RayCollider : public Collider
+class OXYGEN_API RayCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/recorderhandler.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/recorderhandler.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/recorderhandler.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -25,14 +25,15 @@
#include "collisionhandler.h"
#include "collider.h"
#include <set>
+#include <oxygen/oxygen_defines.h>
namespace oxygen
-{
+{
/** \class RecorderHandler is a CollisionHandler that accumulates
collision information of the Collider it belongs to. It is the
resonsibility of the user to reset the recorder.
*/
-class RecorderHandler : public CollisionHandler
+class OXYGEN_API RecorderHandler : public CollisionHandler
{
public:
typedef std::set<boost::weak_ptr<Collider> > TCollisionSet;
@@ -66,12 +67,12 @@
\param list is the list that receives the parent nodes
*/
void GetParentsSupportingClass(const std::string &name, TParentList &list);
-
+
/** same functionality as GetParentsSupportingClass, but using the
C++ type system instead of string comparisons for improved
performance
- \param CLASS is the template parameter for the name of the class
+ \param CLASS is the template parameter for the name of the class
the parent nodes must support
\param list is the list that receives the parent nodes
Modified: trunk/spark/lib/oxygen/physicsserver/sliderjoint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/sliderjoint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/sliderjoint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,13 +20,14 @@
#ifndef OXYGEN_SLIDERJOINT_H
#define OXYGEN_SLIDERJOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
{
class Body;
-class SliderJoint : public Joint
+class OXYGEN_API SliderJoint : public Joint
{
public:
SliderJoint();
Modified: trunk/spark/lib/oxygen/physicsserver/space.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/space.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/space.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -24,6 +24,7 @@
#include "odeobject.h"
#include <set>
+#include <oxygen/oxygen_defines.h>
namespace oxygen
{
@@ -36,7 +37,7 @@
similar to the rigid body concept of the `world', except that it
applies to collision instead of dynamics.
*/
-class Space : public ODEObject
+class OXYGEN_API Space : public ODEObject
{
public:
typedef std::set<dSpaceID> TSpaceIdSet;
Modified: trunk/spark/lib/oxygen/physicsserver/spherecollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/spherecollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/spherecollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_SPHERECOLLIDER_H
#define OXYGEN_SPHERECOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -29,7 +30,7 @@
/** SphereCollider encapsulates an ODE sphere geometry object.
*/
-class SphereCollider : public Collider
+class OXYGEN_API SphereCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/transformcollider.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/transformcollider.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/transformcollider.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_TRANSFORMCOLLIDER_H
#define OXYGEN_TRANSFORMCOLLIDER_H
+#include <oxygen/oxygen_defines.h>
#include "collider.h"
namespace oxygen
@@ -43,7 +44,7 @@
they allow multiple displaced geoms to be connected to one body.
*/
-class TransformCollider : public Collider
+class OXYGEN_API TransformCollider : public Collider
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/universaljoint.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/universaljoint.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/universaljoint.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,13 +20,14 @@
#ifndef OXYGEN_UNIVERSALJOINT_H
#define OXYGEN_UNIVERSALJOINT_H
+#include <oxygen/oxygen_defines.h>
#include "joint.h"
namespace oxygen
{
class Body;
-class UniversalJoint : public Joint
+class OXYGEN_API UniversalJoint : public Joint
{
public:
UniversalJoint();
Modified: trunk/spark/lib/oxygen/physicsserver/velocitycontroller.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/velocitycontroller.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/velocitycontroller.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -20,6 +20,7 @@
#ifndef OXYGEN_VELOCITYCONTROLLER_H
#define OXYGEN_VELOCITYCONTROLLER_H
+#include <oxygen/oxygen_defines.h>
#include <oxygen/physicsserver/bodycontroller.h>
namespace oxygen
@@ -28,7 +29,7 @@
/** \class VelocityController is a BodyController that restricts the
maximum velocity a body can attain
*/
-class VelocityController : public BodyController
+class OXYGEN_API VelocityController : public BodyController
{
//
// Functions
Modified: trunk/spark/lib/oxygen/physicsserver/world.h
===================================================================
--- trunk/spark/lib/oxygen/physicsserver/world.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/oxygen/physicsserver/world.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,6 +22,7 @@
#ifndef OXYGEN_WORLD_H
#define OXYGEN_WORLD_H
+#include <oxygen/oxygen_defines.h>
#include "odeobject.h"
namespace oxygen
@@ -34,7 +35,7 @@
time, thus one reason to use separate worlds is to simulate
systems at different rates.
*/
-class World : public ODEObject
+class OXYGEN_API World : public ODEObject
{
//
// Functions
Modified: trunk/spark/lib/salt/CMakeLists.txt
===================================================================
--- trunk/spark/lib/salt/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -14,6 +14,7 @@
rect.h
sharedlibrary.h
vector.h
+ salt_defines.h
)
set(salt_LIB_SRCS
Modified: trunk/spark/lib/salt/bounds.h
===================================================================
--- trunk/spark/lib/salt/bounds.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/bounds.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,7 +22,7 @@
#ifndef SALT_BOUNDS_H
#define SALT_BOUNDS_H
-#include "defines.h"
+#include "salt_defines.h"
#include "matrix.h"
#include "vector.h"
@@ -32,7 +32,7 @@
{
/** AABB3 provides an axis aligned three dimensional bounding box */
-class AABB3
+class SALT_API AABB3
{
public:
// constructors
@@ -142,7 +142,7 @@
};
/** AABB2 provides an axis aligned two dimensional bounding box */
-class AABB2
+class SALT_API AABB2
{
public:
// constructors
@@ -234,7 +234,7 @@
/** BoundingSphere provides a three dimensional sphere */
-class BoundingSphere
+class SALT_API BoundingSphere
{
public:
// constructors
Modified: trunk/spark/lib/salt/defines.h
===================================================================
--- trunk/spark/lib/salt/defines.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/defines.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -36,27 +36,32 @@
#if defined(_MSC_VER)
// here we turn of a couple of pesky warnings VC emmits
- #pragma warning (disable : 4786) // truncation of debug information
+ #pragma warning (disable : 4786) // truncation of debug information
+ #pragma warning (disable : 4251) // don't complain about missing dll interfaces
#endif
// some compiler-specific defines
#if defined(_MSC_VER)
- // shared library export stuff
+ // shared library export/import stuff
#define SHARED_LIB_EXPORT __declspec(dllexport)
+ #define SHARED_LIB_IMPORT __declspec(dllimport)
// other symbols
#define f_inline __forceinline
// hide the attribute definitions from MSVC
#define __attribute__(x) /*NOTHING*/
#elif defined(__GNUC__)
#define SHARED_LIB_EXPORT
+ #define SHARED_LIB_IMPORT
#define f_inline inline
#endif
// this macro only exports the class in a header, if the shared library version is compiled
#ifdef SHARED_LIB_COMPILE
- #define CLASS_EXPORT SHARED_LIB_EXPORT
+ #define API_EXPORT SHARED_LIB_EXPORT
+ #define API_IMPORT SHARED_LIB_IMPORT
#else
- #define CLASS_EXPORT
+ #define API_EXPORT
+ #define API_IMPORT
#endif
#define Assert(expression, desc) assert(expression && desc)
Modified: trunk/spark/lib/salt/fileclasses.h
===================================================================
--- trunk/spark/lib/salt/fileclasses.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/fileclasses.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -34,6 +34,7 @@
#include <cstdio>
#include <cstdlib>
#include <string>
+#include "salt_defines.h"
#ifndef PATH_MAX
#define PATH_MAX 4096
@@ -45,7 +46,7 @@
/** RFile defines an interface and some basic support functions for
* classes providing read only file services
*/
-class RFile
+class SALT_API RFile
{
public:
virtual ~RFile() {};
@@ -178,7 +179,7 @@
* buffer. On open() a file is completely read into the buffer and
* from there on served from memory.
*/
-class MemFile : public RFile
+class SALT_API MemFile : public RFile
{
public:
MemFile(const char*fn=NULL, const char*mode="rb");
@@ -223,7 +224,7 @@
/** WFile extends the RFile interface with methods for writing to a
* file and related support funtions
*/
-class WFile : public RFile
+class SALT_API WFile : public RFile
{
public:
virtual ~WFile() {};
@@ -306,7 +307,7 @@
};
/** StdFile implements the WFile interface using the standard file system */
-class StdFile : public WFile
+class SALT_API StdFile : public WFile
{
public:
StdFile(FILE*f);
Modified: trunk/spark/lib/salt/frustum.h
===================================================================
--- trunk/spark/lib/salt/frustum.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/frustum.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -36,7 +36,7 @@
#ifndef SALT_FRUSTUM_H
#define SALT_FRUSTUM_H
-#include "defines.h"
+#include "salt_defines.h"
#include "plane.h"
#include "bounds.h"
@@ -47,7 +47,7 @@
* space (possibly infinite) defined by a set of planes. This class
* also provides some 'special' frustra construction methods.
*/
-class Frustum
+class SALT_API Frustum
{
// Members
public:
Modified: trunk/spark/lib/salt/matrix.h
===================================================================
--- trunk/spark/lib/salt/matrix.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/matrix.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,7 +22,7 @@
#ifndef SALT_MATRIX_H
#define SALT_MATRIX_H
-#include "defines.h"
+#include "salt_defines.h"
#include "vector.h"
#include <memory.h>
@@ -35,7 +35,7 @@
/** Matrix provides a 4x4 float Matrix along with methods to set
* up and manipulate it.
*/
-class Matrix
+class SALT_API Matrix
{
public:
/** the values of the matrix */
Modified: trunk/spark/lib/salt/path.h
===================================================================
--- trunk/spark/lib/salt/path.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/path.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -44,6 +44,7 @@
#include <sparkconfig.h>
#endif
+#include "salt_defines.h"
#include <string>
#include <list>
@@ -54,7 +55,7 @@
* hierarchy. It is capable of cleaning paths and separating a path
* into path components.
*/
-class Path
+class SALT_API Path
{
//
// types
Modified: trunk/spark/lib/salt/plane.h
===================================================================
--- trunk/spark/lib/salt/plane.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/plane.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -32,7 +32,7 @@
#ifndef SALT_PLANE_H
#define SALT_PLANE_H
-#include "defines.h"
+#include "salt_defines.h"
#include "vector.h"
#include "bounds.h"
@@ -68,7 +68,7 @@
* vector formed by the coefficients <A,B,C> is the normal vector to
* the plane.
*/
-class Plane
+class SALT_API Plane
{
// Members
public:
Modified: trunk/spark/lib/salt/random.h
===================================================================
--- trunk/spark/lib/salt/random.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/random.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -24,6 +24,7 @@
#include <boost/random.hpp>
#include <boost/version.hpp>
+#include "salt_defines.h"
namespace salt
{
Modified: trunk/spark/lib/salt/rect.h
===================================================================
--- trunk/spark/lib/salt/rect.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/rect.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -22,13 +22,13 @@
#ifndef SALT_RECT_H
#define SALT_RECT_H
-#include "defines.h"
+#include "salt_defines.h"
namespace salt
{
/** this class provides rectangle in two dimensional space */
-class Rect
+class SALT_API Rect
{
public:
/** constucts undefined Rect for performance reasons */
Added: trunk/spark/lib/salt/salt_defines.h
===================================================================
--- trunk/spark/lib/salt/salt_defines.h (rev 0)
+++ trunk/spark/lib/salt/salt_defines.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -0,0 +1,32 @@
+/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*-
+
+ this file is part of rcssserver3D
+ Copyright (C) 2009 RoboCup Soccer Server 3D Maintenance Group
+ $Id$
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#ifndef SALT_SALT_DEFINES_H
+#define SALT_SALT_DEFINES_H
+
+#include "defines.h"
+
+#ifdef salt_EXPORTS
+#define SALT_API API_EXPORT
+#else
+#define SALT_API API_IMPORT
+#endif
+
+#endif //SALT_SALT_DEFINES_H
Property changes on: trunk/spark/lib/salt/salt_defines.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Id
Modified: trunk/spark/lib/salt/sharedlibrary.h
===================================================================
--- trunk/spark/lib/salt/sharedlibrary.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/sharedlibrary.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -29,7 +29,7 @@
#ifndef SALT_SHAREDLIBRARY_H
#define SALT_SHAREDLIBRARY_H
-#include "defines.h"
+#include "salt_defines.h"
#include <string>
#include <cstdio>
@@ -42,7 +42,7 @@
* Windows using the Visual C++ Compiler and Linux using the gcc
* compiler are available.
*/
-class SharedLibrary
+class SALT_API SharedLibrary
{
//
// types
Modified: trunk/spark/lib/salt/tvector.h
===================================================================
--- trunk/spark/lib/salt/tvector.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/tvector.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -33,7 +33,7 @@
#ifndef SALT_TVECTOR_H
#define SALT_TVECTOR_H
-#include "defines.h"
+#include "salt_defines.h"
#include "gmath.h"
#include <iostream>
Modified: trunk/spark/lib/salt/vector.h
===================================================================
--- trunk/spark/lib/salt/vector.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/salt/vector.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -37,7 +37,7 @@
namespace salt
{
-class Vector2f : public TVector2<float, Vector2f>
+class SALT_API Vector2f : public TVector2<float, Vector2f>
{
//
// Methods
@@ -74,7 +74,7 @@
}
};
-class Vector3f : public TVector3<float, Vector3f>
+class SALT_API Vector3f : public TVector3<float, Vector3f>
{
//
// Methods
Modified: trunk/spark/lib/zeitgeist/CMakeLists.txt
===================================================================
--- trunk/spark/lib/zeitgeist/CMakeLists.txt 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/zeitgeist/CMakeLists.txt 2009-03-17 18:03:47 UTC (rev 56)
@@ -9,6 +9,7 @@
object.h
object_c.h
zeitgeist.h
+ zeitgeist_defines.h
fileserver/fileserver.h
fileserver/filesystem.h
logserver/logserver.h
Modified: trunk/spark/lib/zeitgeist/class.h
===================================================================
--- trunk/spark/lib/zeitgeist/class.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/zeitgeist/class.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -127,7 +127,7 @@
* through a unified interface, therefore enabling Class objects to be
* added at runtime to the Core.
*/
-class Class : public Leaf
+class ZEITGEIST_API Class : public Leaf
{
// friends
friend class Object;
Modified: trunk/spark/lib/zeitgeist/core.h
===================================================================
--- trunk/spark/lib/zeitgeist/core.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/zeitgeist/core.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -28,6 +28,7 @@
#include <set>
#include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp>
+#include "zeitgeist_defines.h"
namespace salt
{
@@ -53,7 +54,7 @@
bundles- plugins containg new classes, that can be registered to
the framework at runtime.
*/
-class Core
+class ZEITGEIST_API Core
{
public:
//
Modified: trunk/spark/lib/zeitgeist/corecontext.h
===================================================================
--- trunk/spark/lib/zeitgeist/corecontext.h 2009-03-07 11:38:32 UTC (rev 55)
+++ trunk/spark/lib/zeitgeist/corecontext.h 2009-03-17 18:03:47 UTC (rev 56)
@@ -34,6 +34,7 @@
#include <list>
#include <boost/weak_ptr.hpp>
#include <boost/shared_ptr.hpp>
+#include "zeitgeist_defines.h"
namespace zeitgeist
{
@@ -51,7 +52,7 @@
* browsing the same object hierarchy. Therefore it was necessary to
* place the current browsing context into a distinct object.
*/
-class CoreContext
+class ZEITGEIST_API CoreContext
{
//
// types
Modified: trunk/spark/lib/zeitgeist/fileserver/fileserver.h
===================================================================
---...
[truncated message content] |