CCAFFEINE  0.8.8
DefaultBuilderModel.h
00001 #ifndef DefaultBuilderModel_h_seen
00002 #define DefaultBuilderModel_h_seen
00003 
00015 class DefaultBuilderModel : public virtual BuilderModel {
00016 
00017 private:
00018 
00021   std::string createInstanceName(const std::string & className) ;
00022 
00024   ::std::vector< ComponentChangedListener *> cmptChgLsnrs;
00025 
00026 
00027   /* CDELETE */ ConnectionFramework *fwk_data;
00028 
00029 public:
00030 
00032   ConnectionFramework *getFramework();
00033 
00034 
00040   DefaultBuilderModel(int & classNotFoundException, StaticFactory *sf, int64_t fComm, bool useComm); 
00041   virtual ~DefaultBuilderModel() ;
00042 
00044   virtual void initScript();
00045 
00047   virtual void componentChanged(ComponentChangedEvent* evt) ;
00048   
00050   virtual void addComponentChangedListener(ComponentChangedListener* l) ;
00051 
00052 
00057   std::string pullDownFromPallet(const std::string & className, const std::string & instanceName);
00058 
00065   std::string pullDownFromPallet(const ::std::string & className,
00066                   const ::std::string & instanceName,
00067                   ::ccafeopq::TypeMap_shared cprops);
00068 
00073   std::string pullDownFromPallet(const std::string & className);
00074 
00075 
00077   int disconnect(const char *fromInstance, const char *providesInstance, 
00078                  const char *toInstance, const char *usesInstance);
00079 
00080 
00087   int connect(const char *fromInstance, const char *providesInstance, 
00088               const char *toInstance, const char *usesInstance);
00089 
00090 
00098   ::std::map< ::std::string, ComponentInfo_shared > getArena() ;
00099 
00100 
00105   ::std::vector< std::string > getPallet() ;
00106 
00108   ::std::vector< std::string > getInstanceNames() ;
00109 
00111   int goOne(const char * instanceName, const char * portName);
00112 
00113 
00114   void setDebug(bool tf) ;
00115 
00117   void removeInstantiatedComponent(const std::string & iname);
00118 
00120   void removeAllInstantiatedComponents();
00121 
00123   /* CFREE */virtual char * getConfiguration(const char * instanceName, const char * portName, const char *fieldName);
00125   /*CFREE */virtual char * getConfiguration(const char * instanceName, const char * portName);
00126 
00128   virtual char * setConfiguration(const char * instanceName, const char * portName, const char *fieldName, const char * data);
00129 
00133   virtual std::vector< std::string > getComponentProperties( ::std::string & instanceName);
00137   virtual const std::string getComponentProperty(const char * instanceName, const char * key);
00138 
00139   virtual std::vector< std::string > getComponentProperties(const std::string & instanceName);
00140 
00141 
00146   virtual void setComponentProperty(const char * instanceName, const char * key, const char * value); 
00147 
00148   virtual ::ccafeopq::TypeMap_shared getPortProperties(
00149                   const ::std::string & instanceName, 
00150                   const std::string & portName);
00151 
00152   virtual int setPortProperty(
00153                   const ::std::string & instanceName, 
00154                   const std::string & portName, const std::string & key,
00155                   const std::string & valueType, const std::string & value);
00156 
00157 
00162   virtual int setRepositoryPath(char **argv, int argc);
00163   virtual int setRepositoryPath( const std::vector< std::string > & p);
00164 
00168   virtual std::vector< std::string > getRepositoryPath();
00169   
00176   virtual std::vector< std::string > getRepositoryClasses();
00177   
00182   virtual int loadRepositoryClass(const char *className, bool global, bool lazy);
00183 
00185   virtual int loadPorts(const std::string & libPathName);
00186 };
00187 #endif // DefaultBuilderModel_h_seen