OMKConvertors.h

Go to the documentation of this file.
00001 
00002 /************************************************************************/
00003 /* This file is part of openMask(c) INRIA, CNRS, Universite de Rennes 1 */
00004 /* 1993-2002, thereinafter the Software                                 */
00005 /*                                                                      */
00006 /* The Software has been developped within the Siames Project.          */
00007 /* INRIA, the University of Rennes 1 and CNRS jointly hold intellectual */
00008 /* property rights                                                      */
00009 /*                                                                      */
00010 /* The Software has been registered with the Agence pour la Protection  */
00011 /* des Programmes (APP) under registration number                       */
00012 /* IDDN.FR.001.510008.00.S.P.2001.000.41200                             */
00013 /*                                                                      */
00014 /* This file may be distributed under the terms of the Q Public License */
00015 /* version 1.0 as defined by Trolltech AS of Norway and appearing in    */
00016 /* the file LICENSE.QPL included in the packaging of this file.         */
00017 /*                                                                      */
00018 /* Licensees holding valid specific licenses issued by INRIA, CNRS or   */
00019 /* Universite Rennes 1 for the software may use this file in            */
00020 /* acordance with that specific license                                 */
00021 /************************************************************************/
00022                 
00023 #if !defined _OMK_III_CONVERTORS_H_
00024 #define _OMK_III_CONVERTORS_H_
00025 
00026 #include "OMKIConvertor.h"
00027 #include "OMKTransform.h"
00028 
00029 namespace OMK  
00030 {
00031 class ConfigurationParameterDescriptor ;
00032 namespace Type { class Transform ; }
00033 namespace Iii
00034 {
00035 
00036 //-----------------------------------------------------------------------------
00071 template< typename Type >
00072 class AverageT : public IConvertorT< Type, std::vector< Type > >
00073 {
00074   DECLARE_TEMPLATE_CONVERTOR_FACTORY( AverageT, Type, std::vector< Type > ) ;
00075 } ;
00077 typedef AverageT< float  > AverageFloat  ;
00079 typedef AverageT< double > AverageDouble ;
00080 
00081 //-----------------------------------------------------------------------------
00082 class Barycenter : public IConvertorT< OMK::Type::Transform, std::vector< OMK::Type::Transform > >
00083 {
00084   DECLARE_CONVERTOR_FACTORY( Barycenter, OMK::Type::Transform, std::vector< OMK::Type::Transform > ) ;
00085 } ;
00086 
00087 //-----------------------------------------------------------------------------
00123 template< typename Type >
00124 class IntegratorT : public IConvertorT< Type, Type >
00125 {
00126   DECLARE_TEMPLATE_CONVERTOR_FACTORY( IntegratorT, Type, Type ) ;
00127 } ;
00129 typedef IntegratorT< int    > IntegratorInt    ;
00131 typedef IntegratorT< float  > IntegratorFloat  ;
00133 typedef IntegratorT< double > IntegratorDouble ;
00134 
00135 //-----------------------------------------------------------------------------
00136 #if defined _MSC_VER
00137 REGISTER_TEMPLATE_CONVERTOR_FACTORY( AverageFloat, float , std::vector< float  >, "AverageFloat"  ) ;
00138 REGISTER_TEMPLATE_CONVERTOR_FACTORY( AverageDouble, double, std::vector< double >, "AverageDouble" ) ;
00139 
00140 REGISTER_TEMPLATE_CONVERTOR_FACTORY( IntegratorInt, int   , int   , "IntegratorInt"    ) ;
00141 REGISTER_TEMPLATE_CONVERTOR_FACTORY( IntegratorFloat, float , float , "IntegratorFloat"  ) ;
00142 REGISTER_TEMPLATE_CONVERTOR_FACTORY( IntegratorDouble, double, double, "IntegratorDouble" ) ;
00143 #endif // defined _MSC_VER
00144 
00145   }// namespace Iii
00146 }// namespace OMK
00147 
00148 #endif // defined _OMK_III_CONVERTORS_H_
00149 

logo OpenMask

Documentation generated on Mon Jun 9 11:45:56 2008

Generated with doxygen by Dimitri van Heesch ,   1997-2007