00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #pragma once
00022
00023 #include <drizzled/plugin/table_function.h>
00024 #include <drizzled/plugin/listen.h>
00025
00026 class ProtocolTool : public drizzled::plugin::TableFunction
00027 {
00028 public:
00029
00030 ProtocolTool();
00031
00032 class Generator : public drizzled::plugin::TableFunction::Generator
00033 {
00034 std::vector<drizzled::plugin::Listen *>::iterator protocol_it;
00035 std::vector<drizzled::plugin::ListenCounter *>::iterator counter_it;
00036 drizzled::plugin::Listen *protocol;
00037 drizzled::plugin::ListenCounter *counter;
00038 public:
00039 Generator(drizzled::Field **arg);
00040 void fill();
00041 bool populate();
00042 };
00043
00044 Generator *generator(drizzled::Field **arg)
00045 {
00046 return new Generator(arg);
00047 }
00048 };