class terminator_##data_class : public midge::_consumer< midge::type_list< data_class > > \
{ \
public: \
terminator_##data_class(); \
virtual ~terminator_##data_class(); \
public: \
virtual void initialize() {}; \
virtual void execute( midge::diptera* a_midge = nullptr ); \
virtual void finalize() {}; \
}; \
class terminator_##data_class##_binding : public _node_binding< terminator_##data_class, terminator_##data_class##_binding > \
{ \
public: \
terminator_##data_class##_binding(); \
virtual ~terminator_##data_class##_binding(); \
private: \
virtual void do_apply_config( terminator_##data_class*, const scarab::param_node& ) const {}; \
virtual void do_dump_config( const terminator_##data_class*, scarab::param_node& ) const {}; \
};