OMKJointExtension.h

Go to the documentation of this file.
00001 /************************************************************************/
00002 /* This file is part of openMask(c) INRIA, CNRS, Universite de Rennes 1 */
00003 /* 1993-2002, thereinafter the Software                                 */
00004 /*                                                                      */
00005 /* The Software has been developped within the Siames Project.          */
00006 /* INRIA, the University of Rennes 1 and CNRS jointly hold intellectual */
00007 /* property rights                                                      */
00008 /*                                                                      */
00009 /* The Software has been registered with the Agence pour la Protection  */
00010 /* des Programmes (APP) under registration number                       */
00011 /* IDDN.FR.001.510008.00.S.P.2001.000.41200                             */
00012 /*                                                                      */
00013 /* This file may be distributed under the terms of the Q Public License */
00014 /* version 1.0 as defined by Trolltech AS of Norway and appearing in    */
00015 /* the file LICENSE.QPL included in the packaging of this file.         */
00016 /*                                                                      */
00017 /* Licensees holding valid specific licenses issued by INRIA, CNRS or   */
00018 /* Universite Rennes 1 for the software may use this file in            */
00019 /* acordance with that specific license                                 */
00020 /************************************************************************/
00021                 
00022 #if !defined OMK_III_JOINTEXTENSION_H
00023 #define OMK_III_JOINTEXTENSION_H
00024 
00025 #include "OMKAttribute.h"
00026 #include "OMKTransform.h"
00027 #include "OMKInteractorExtension.h"
00028 
00029 namespace OMK  
00030 {
00031   // Predefined classes
00032   class ExtensibleSimulatedObject ;
00033   template< typename T > class IAccessorT ;
00034   namespace Type { class Transform ; }
00035   namespace Iii 
00036   {
00037     class JointInteractorExtension ;
00038     class Joint ;
00039     
00107 class OMKIII_API JointExtension
00108 : public ExtensionT< ExtensibleSimulatedObject >
00109 {
00110   friend class JointInteractorExtension ;
00111   friend class Joint ;
00114   DECLARE_EXTENSION_FACTORY( JointExtension ) ;
00115 protected:
00116   virtual bool loadObjectParameters( const ConfigurationParameterDescriptor * node ) ;
00120   virtual bool loadExtensionParameters( const ConfigurationParameterDescriptor * node ) ;
00125   virtual void postComputeParameters() ;
00131   IAttributeBaseT< OMK::Type::Transform >* _objectPosition ;
00134   AttributeT< OMK::Type::Transform > _referencePosition ;
00139   AttributeT< OMK::Type::Transform > _jointPosition ;
00142   bool _connected ;
00144   JointInteractorExtension* _interactor ;
00147   Joint* _joint ;
00148 } ;
00149 
00150   }// namespace Iii
00151 }// namespace OMK
00152 
00153 #endif // defined OMK_III_JOINTEXTENSION_H

logo OpenMask

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

Generated with doxygen by Dimitri van Heesch ,   1997-2007