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 _INTERACTOROUTPUTT_H_ 00024 #define _INTERACTOROUTPUTT_H_ 00025 00026 #include "OMKInteractorOutput.h" 00027 #include "OMKEventTypeForAttributeT.h" 00028 00029 namespace OMK 00030 { 00031 template< typename PrmType > class IAttributeBaseT; 00032 00033 namespace Iii 00034 { 00035 00036 template< typename PrmType, typename ModelType > 00037 class InteractorOutputT : public InteractorOutput, public EventTypeForAttributeT< ModelType > 00038 { 00039 protected: 00040 friend class OMK::Iii::InteractorOutputCreatorT< InteractorOutputT > ; 00041 InteractorOutputT( const Name& id, const Name& attributeId, 00042 InteractorExtension *interactor, const Name& category, 00043 bool setByEvent ) ; 00044 public: 00045 typedef std::pair< Name, ModelType > IdAndValuePrm ; 00046 DECLARE_TYPE_EVENT_LISTENER( IdAndValuePrm, IdAndValue, EventTypeForAttributeT< ModelType > ) ; 00047 00048 virtual ~InteractorOutputT() ; 00049 protected: 00050 virtual bool processSetValue( IdAndValueEvent *e ) ; 00052 IAttributeBaseT< PrmType >* _attribute ; 00053 IdAndValueEventListener* _listener ; 00054 } ; 00055 00056 }// namespace Iii 00057 }// namespace OMK 00058 00059 #endif // defined _INTERACTOROUTPUTS_H_
Documentation generated on Mon Jun 9 11:45:56 2008 |
Generated with doxygen by Dimitri van Heesch , 1997-2007 |