NEOCCA bindings Specification  0.2.8
ParameterPortFactory.hh
Go to the documentation of this file.
00001 #ifndef neo_ParameterPortFactory_h_seen
00002 #define neo_ParameterPortFactory_h_seen
00003 
00004 namespace neo {
00005 namespace cca {
00006 namespace ports {
00007 
00008 
00012 class ParameterPortFactory : public virtual neo::cca::Port
00013 {
00014 public:
00015         
00016         virtual ~ParameterPortFactory() {}
00017 
00020         virtual void createParameterPort(neo::cca::TypeMap_shared portData, const ::std::string & portName)= 0;
00021 
00024         virtual void setBatchTitle(neo::cca::TypeMap_shared portData, const ::std::string & title)= 0;
00025         
00030         virtual void setGroupName(neo::cca::TypeMap_shared portData, const std::string & newGroupName)= 0;
00031         virtual void setGroupNameAndTitle(neo::cca::TypeMap_shared portData, const std::string & newGroupName, const std::string & title)= 0;
00032 
00035         virtual void addRequestBoolean(neo::cca::TypeMap_shared portData,
00036                                         const std::string & name, 
00037                                         const std::string & help,
00038                                         const std::string & prompt,
00039                                         bool deflt)= 0;
00040 
00043         virtual void addRequestInt(neo::cca::TypeMap_shared portData,
00044                                         const std::string & name, 
00045                                         const std::string & help,
00046                                         const std::string & prompt,
00047                                         int deflt,
00048                                         int low,
00049                                         int high)= 0;
00050 
00053         virtual void addRequestLong(neo::cca::TypeMap_shared portData,
00054                                         const std::string & name, 
00055                                         const std::string & help,
00056                                         const std::string & prompt,
00057                                         int64_t deflt,
00058                                         int64_t low,
00059                                         int64_t high)= 0;
00060 
00066         virtual void addRequestFloat(neo::cca::TypeMap_shared portData,
00067                                         const std::string & name, 
00068                                         const std::string & help,
00069                                         const std::string & prompt,
00070                                         float deflt,
00071                                         float low,
00072                                         float high)= 0;
00073 
00076         virtual void addRequestDouble(neo::cca::TypeMap_shared portData,
00077                                         const std::string & name, 
00078                                         const std::string & help,
00079                                         const std::string & prompt,
00080                                         double deflt,
00081                                         double low,
00082                                         double high)= 0;
00083 
00086         virtual void addRequestString(neo::cca::TypeMap_shared portData,
00087                                         const std::string & name, 
00088                                         const std::string & help,
00089                                         const std::string & prompt,
00090                                         const std::string & deflt)= 0;
00092         virtual void addRequestStringChoice(neo::cca::TypeMap_shared portData,
00093                         const std::string & key, const std::string &choice)= 0;
00094 
00096         virtual void addStringChoices(neo::cca::TypeMap_shared portData,
00097                                         const std::string & key,
00098                                         std::vector< std::string > choices)= 0;
00099 
00101         virtual void addIntChoices(neo::cca::TypeMap_shared portData,
00102                 const std::string & key,
00103                 std::vector< int32_t > choices)= 0;
00104 
00107         virtual void addIntChoices(neo::cca::TypeMap_shared portData,
00108                 const std::string & key,
00109                 int32_t choices[], size_t nChoices)= 0;
00110         
00112         virtual void addLongChoices(neo::cca::TypeMap_shared portData,
00113                 const std::string & key,
00114                 std::vector< int64_t > choices)= 0;
00115 
00118         virtual void addLongChoices(neo::cca::TypeMap_shared portData,
00119                 const std::string & key,
00120                 int64_t choices[], size_t nChoices)= 0;
00121 
00123         virtual void addFloatChoices(neo::cca::TypeMap_shared portData,
00124                 const std::string & key,
00125                 std::vector< float > choices)= 0;
00126 
00129         virtual void addFloatChoices(neo::cca::TypeMap_shared portData,
00130                 const std::string & key,
00131                 float choices[], size_t nChoices)= 0;
00132 
00134         virtual void addDoubleChoices(neo::cca::TypeMap_shared portData,
00135                 const std::string & key,
00136                 std::vector< double > choices)= 0;
00137 
00140         virtual void addDoubleChoices(neo::cca::TypeMap_shared portData,
00141                 const std::string & key,
00142                 double choices[], size_t nChoices)= 0;
00143 
00145         virtual void addFcomplexChoices(neo::cca::TypeMap_shared portData,
00146                 const std::string & key,
00147                 std::vector< std::complex< float > > choices)= 0;
00148 
00151         virtual void addFcomplexChoices(neo::cca::TypeMap_shared portData,
00152                 const std::string & key,
00153                 std::complex< float > choices[], size_t nChoices)= 0;
00154 
00156         virtual void addDcomplexChoices(neo::cca::TypeMap_shared portData,
00157                 const std::string & key,
00158                 std::vector< std::complex< double > > choices)= 0;
00159 
00162         virtual void addDcomplexChoices(neo::cca::TypeMap_shared portData,
00163                 const std::string & key,
00164                 std::complex< double > choices[], size_t nChoices)= 0;
00165 
00166 
00177         virtual void clearRequests(neo::cca::TypeMap_shared portData)= 0;
00178 
00187         virtual void registerUpdater(neo::cca::TypeMap_shared portData, 
00188                                 ParameterGetListener *powner)= 0;
00189 
00197         virtual void registerUpdatedListener(neo::cca::TypeMap_shared portData,
00198                                 ParameterSetListener *powner)= 0;
00199 
00204         virtual void addParameterPort(neo::cca::TypeMap_shared portData, neo::cca::Services * svc)= 0;
00205 
00207         virtual void removeParameterPort(neo::cca::TypeMap_shared portData, neo::cca::Services * svc)= 0;
00208 
00209 
00210 }; // end virtual interface ParameterPortFactory
00211 
00212 
00213 }  // end namespace ports
00214 }  // end namespace cca
00215 }  // end namespace neo
00216 #endif // neo_ParameterPortFactory_h_seen