Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkConceptChecking.h File Reference

Go to the source code of this file.

Namespaces

namespace  itk
namespace  itk::Concept
namespace  itk::Concept::Detail

Classes

struct  itk::Concept::Detail::UniqueType< T >
struct  itk::Concept::Detail::UniqueType_int<>
struct  itk::Concept::Detail::UniqueType_unsigned_int< int >
struct  itk::Concept::DefaultConstructible< T >
struct  itk::Concept::DefaultConstructible< T >::Constraints
struct  itk::Concept::CopyConstructible< T >
struct  itk::Concept::CopyConstructible< T >::Constraints
struct  itk::Concept::Convertible< T1, T2 >
struct  itk::Concept::Convertible< T1, T2 >::Constraints
struct  itk::Concept::Assignable< T >
struct  itk::Concept::Assignable< T >::Constraints
struct  itk::Concept::LessThanComparable< T >
struct  itk::Concept::LessThanComparable< T >::Constraints
struct  itk::Concept::EqualityComparable< T >
struct  itk::Concept::EqualityComparable< T >::Constraints
struct  itk::Concept::Comparable< T >
struct  itk::Concept::Comparable< T >::Constraints
struct  itk::Concept::AdditiveOperators< T >
struct  itk::Concept::AdditiveOperators< T >::Constraints
struct  itk::Concept::MultiplicativeOperators< T >
struct  itk::Concept::MultiplicativeOperators< T >::Constraints
struct  itk::Concept::SameType< T1, T2 >
struct  itk::Concept::SameType< T1, T2 >::Constraints
struct  itk::Concept::SameDimension< D1, D2 >
struct  itk::Concept::SameDimension< D1, D2 >::Constraints

Defines

#define ITK_CONCEPT_IMPLEMENTATION_STANDARD

Functions

template<typename T> void IgnoreUnusedVariable (T)


Define Documentation

#define ITK_CONCEPT_IMPLEMENTATION_STANDARD
 

Choose a concept checking implementation based on compiler abilities. Definition at line 34 of file itkConceptChecking.h.

 
#define itkConceptConstraintsMacro  ) 
 

Value:

template <void (Constraints::*)()> struct Enforcer {}; \ typedef Enforcer<&Constraints::constraints> EnforcerInstantiation
Standard instantiation-time concept check. No run-time overhead introduced. This implementation is based on "Concept Checking: Binding Parametric Polymorphism in C++" by Jeremy Siek and Andrew Lumsdaine, University of Notre Dame. Definition at line 47 of file itkConceptChecking.h.

#define itkConceptMacro name,
concept   )     enum { name = sizeof concept }
 

Standard instantiation-time concept check. No run-time overhead introduced. This implementation is based on "Concept Checking: Binding Parametric Polymorphism in C++" by Jeremy Siek and Andrew Lumsdaine, University of Notre Dame. Definition at line 50 of file itkConceptChecking.h.


Function Documentation

template<typename T>
void IgnoreUnusedVariable  )  [inline]
 

Concept checks may require a variable to be declared but not used. This function can be called with the variable to prevent the compiler warning. (BOOST) Definition at line 106 of file itkConceptChecking.h.

Referenced by itk::Concept::SameType< T1, T2 >::Constraints::constraints(), and itk::OStringStream::OStringStream().

template<class T>
void RequireBooleanExpression const T &  t  ) 
 

Concept checks may require that an expression be convertible to bool. Passing the expression to this function will enforce this requirement. (BOOST) Definition at line 114 of file itkConceptChecking.h.


Generated at Sat Mar 31 02:35:38 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000