1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > EOS 源代码解读 (2)插件-插件模板

EOS 源代码解读 (2)插件-插件模板

时间:2022-05-03 03:56:44

相关推荐

EOS 源代码解读 (2)插件-插件模板

eos/plugins/template_plugin定义了eos项目中所有插件的模板

/*** This is a template plugin, intended to serve as a starting point for making new plugins*/class template_plugin : public appbase::plugin<template_plugin> {public:template_plugin();virtual ~template_plugin();APPBASE_PLUGIN_REQUIRES()virtual void set_program_options(options_description&, options_description& cfg) override;void plugin_initialize(const variables_map& options);void plugin_startup();void plugin_shutdown();private:std::unique_ptr<class template_plugin_impl> my;};static appbase::abstract_plugin& _template_plugin = app().register_plugin<template_plugin>();class template_plugin_impl {public:};template_plugin::template_plugin():my(new template_plugin_impl()){}template_plugin::~template_plugin(){}void template_plugin::set_program_options(options_description&, options_description& cfg) {cfg.add_options()("option-name", bpo::value<string>()->default_value("default value"),"Option Description");}void template_plugin::plugin_initialize(const variables_map& options) {try {if( options.count( "option-name" )) {// Handle the option}}FC_LOG_AND_RETHROW()}void template_plugin::plugin_startup() {// Make the magic happen}void template_plugin::plugin_shutdown() {// OK, that's enough magic}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。