|
|
|
|
|
|
|
|
#define IncludedScannerPool
|
|
|
#define IncludedScannerPool
|
|
|
|
|
|
|
|
|
#include "../SNF4CGP/SNFMulti/SNFMulti.hpp"
|
|
|
#include "../SNF4CGP/SNFMulti/SNFMulti.hpp"
|
|
|
|
|
|
#include "../SNF4CGP/CodeDweller/threading.hpp"
|
|
|
|
|
|
|
|
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
|
|
|
|
using namespace std;
|
|
|
|
|
|
|
|
|
class Scanner { // SNF Scanner instance for the pool
|
|
|
class Scanner { // SNF Scanner instance for the pool
|
|
|
private:
|
|
|
private:
|
|
|
|
|
|
|
|
|
private:
|
|
|
private:
|
|
|
snf_RulebaseHandler* Rulebase; // Allocates an SNF rulebase.
|
|
|
snf_RulebaseHandler* Rulebase; // Allocates an SNF rulebase.
|
|
|
unsigned int ScannerCount; // Allocates and counts scanners.
|
|
|
unsigned int ScannerCount; // Allocates and counts scanners.
|
|
|
|
|
|
ProductionQueue<Scanner*> PooledScanners; // Pool of ready-to-go scanners.
|
|
|
|
|
|
|
|
|
public:
|
|
|
public:
|
|
|
ScannerPool(string Configuration); // Constructed with Rulebase config.
|
|
|
ScannerPool(string Configuration); // Constructed with Rulebase config.
|