VR-Forces 4.1.1 Class Documentation
featuresDefines.h
Go to the documentation of this file.
1 
2 
3 
4 
5 #pragma once
6 
8 //#if defined BOOST_MPL_LIMIT_LIST_SIZE && BOOST_MPL_LIMIT_LIST_SIZE < 40
9 //# error BOOST_MPL_LIMIT_LIST_SIZE too small
10 //#else
11 //# define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
12 //# define BOOST_MPL_LIMIT_LIST_SIZE 40
13 //# define BOOST_MPL_LIMIT_VECTOR_SIZE 40
14 //#endif
15 
17 #ifdef WIN32
18 # ifdef DT_DLL_BUILD
19 # ifdef features_EXPORTS
20 
21 # pragma warning (disable:4251)
22 # define DT_DLL_features __declspec(dllexport)
23 # else
24 # define DT_DLL_features __declspec(dllimport)
25 # endif
26 # else
27 # define DT_DLL_features
28 # endif
29 #else
30 # define DT_DLL_features
31 #endif
32 
34 #include <vector>
35 #include <list>
36 #include <set>
37 #include <map>
38 
39 #include <string>
40 #include <iosfwd>
41 #include <memory>
42 
43 #include <boost/shared_ptr.hpp>
44 #include <boost/scoped_ptr.hpp>
45 #include <boost/enable_shared_from_this.hpp>
46 
47 #include <boost/utility.hpp>
48 #include <boost/bind.hpp>
49 #include <boost/exception/all.hpp>
50 #include <boost/lexical_cast.hpp>
51 #include <boost/cast.hpp>
52 #include <boost/format.hpp>
53 
54 #include <vlutil/vlPrint.h>
55 #include <vlutil/vlExceptions.h>
56 
57 #include <geometry/point.h>
58 
59 namespace MAKVRinTerra
60 {
65  template <typename Tag, typename Base = DtException>
66  class TaggedException : public Base, virtual public boost::exception
67  {
68  public:
70  const char *msg,
71  const char *func,
72  const char *file,
73  unsigned int line,
74  const DtException *prev = 0) throw() : Base(msg,func,file,line,prev) { }
75  };
76 
79  template <typename Derived, typename Base>
80  inline boost::shared_ptr<Derived> polymorphic_pointer_downcast(boost::shared_ptr<Base> b)
81  {
82  //#ifdef DEBUG
83  boost::shared_ptr<Derived> d(boost::dynamic_pointer_cast<Derived>(b));
84  assert(d);
85  return d;
86  //#else
88  //#endif
89  }
90 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)