add vcglib
This commit is contained in:
1 parent
6f6c0c8eb7
commit
af8100f851
1537 files changed
+634197
No files matched your search
Executable
+69
@@ -0,0 +1,69 @@
|
||||
#ifndef IMG_BASE_H_
|
||||
#define IMG_BASE_H_
|
||||
/*! \file img_base.h
|
||||
\brief basic definitions for the img module
|
||||
|
||||
This header contains the basic module definitions.
|
||||
*/
|
||||
|
||||
/// base of the static assertion mechanism
|
||||
template<bool> struct NON_TRUE_EXPR_CompileTimeError;
|
||||
/// partial instantiation for the static assertion mechanism
|
||||
template<> struct NON_TRUE_EXPR_CompileTimeError<true> {};
|
||||
|
||||
/// the static assertion mechanism
|
||||
#define STATIC_ASSERT(exp) (NON_TRUE_EXPR_CompileTimeError< (exp) >())
|
||||
|
||||
/// base of the static typecheck mechanism
|
||||
template<typename> struct NON_FLOAT_OR_DOUBLE_TYPE_CompileTimeError;
|
||||
/// partial instantiation for the static typecheck mechanism
|
||||
template<> struct NON_FLOAT_OR_DOUBLE_TYPE_CompileTimeError<float> {};
|
||||
/// partial instantiation for the static typecheck mechanism
|
||||
template<> struct NON_FLOAT_OR_DOUBLE_TYPE_CompileTimeError<double> {};
|
||||
|
||||
/// the static typecheck mechanism
|
||||
#define STATIC_FLOAT_OR_DOUBLE_TYPECHECK(type) (NON_FLOAT_OR_DOUBLE_TYPE_CompileTimeError< type >())
|
||||
|
||||
/// define NULL pointer value
|
||||
#ifndef NULL
|
||||
#ifdef __cplusplus
|
||||
#define NULL 0
|
||||
#else
|
||||
#define NULL ((void *)0)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <assert.h>
|
||||
#include <math.h>
|
||||
#include <exception>
|
||||
#include <typeinfo>
|
||||
|
||||
/*! \brief the img module namespace
|
||||
|
||||
this is the main image module namespace.
|
||||
*/
|
||||
namespace img {
|
||||
|
||||
/*! \brief the basic exception class
|
||||
|
||||
this is the basic image exception class, it simply carries an error string to the console.
|
||||
*/
|
||||
class ImageException: public std::exception
|
||||
{
|
||||
public:
|
||||
/// the error string
|
||||
const char *message;
|
||||
/// default constructor
|
||||
ImageException():exception(),message("no message"){}
|
||||
/*! \brief message carrying constructor
|
||||
|
||||
\param arg_message the error string
|
||||
*/
|
||||
ImageException(const char *arg_message):exception(),message(arg_message){}
|
||||
/// the destructor
|
||||
virtual ~ImageException () throw (){}
|
||||
};
|
||||
|
||||
} //end namespace img
|
||||
|
||||
#endif /*IMG_BASE_H_*/
|
||||
Reference in new issue
Block a user