00001 00009 #ifndef BS_CALC_PERF_BHP_H_ 00010 #define BS_CALC_PERF_BHP_H_ 00011 00012 #include "calc_perf_bhp_base.h" 00013 00014 namespace blue_sky 00015 { 00016 00017 00023 template <typename strategy_t> 00024 class BS_API_PLUGIN calc_perf_bhp : public calc_perf_bhp_base <strategy_t> 00025 { 00026 public: 00027 00028 typedef calc_perf_bhp_base <strategy_t> base_t; 00029 typedef calc_perf_bhp <strategy_t> this_t; 00030 00031 typedef typename base_t::sp_calc_model_t sp_calc_model_t; 00032 typedef typename base_t::sp_well_t sp_well_t; 00033 typedef typename base_t::sp_mesh_iface_t sp_mesh_iface_t; 00034 typedef typename base_t::item_t item_t; 00035 typedef typename base_t::index_t index_t; 00036 00037 public: 00038 00045 void 00046 calculate (sp_well_t &well, const sp_calc_model_t &calc_model, const sp_mesh_iface_t &mesh) const; 00047 00049 BLUE_SKY_TYPE_DECL_T (calc_perf_bhp <strategy_t>); 00050 00051 }; 00052 00053 00054 } // namespace blue_sky 00055 00056 00057 #endif // #ifndef BS_CALC_PERF_BHP_H_ 00058