Rev | Line | |
---|
[534] | 1 | // toimanager.h
|
---|
| 2 | // Eric Aubourg CEA/DAPNIA/SPP septembre 1999
|
---|
| 3 |
|
---|
| 4 | #ifndef TOIMANAGER_H
|
---|
| 5 | #define TOIMANAGER_H
|
---|
| 6 |
|
---|
| 7 | #include <set>
|
---|
| 8 | #include <map>
|
---|
| 9 | #include <iostream.h>
|
---|
| 10 | using namespace std;
|
---|
| 11 |
|
---|
| 12 | #include "toi.h"
|
---|
| 13 |
|
---|
| 14 | class TOIProducer;
|
---|
| 15 | class TOILowLevProducer;
|
---|
| 16 | class TOIAbsorber;
|
---|
| 17 |
|
---|
| 18 | class TOIManager {
|
---|
| 19 | public:
|
---|
| 20 | static void registerDefaultProducers();
|
---|
| 21 | static void registerProducer(TOIProducer* p);
|
---|
| 22 | static TOIProducer* findTOIProducer(TOI const& toi); // NULL if cannot build
|
---|
| 23 |
|
---|
| 24 | static set<TOIProducer*> producers;
|
---|
| 25 |
|
---|
| 26 | static void registerLLProducer(TOILowLevProducer* p, int blk_kind);
|
---|
| 27 | static void activateLLProducer(TOILowLevProducer* p);
|
---|
| 28 | static map<TOILowLevProducer*, long> llProducers; // long : masque de bloc
|
---|
| 29 | static map<TOILowLevProducer*, long> activeLLProducers; // long : masque de bloc
|
---|
| 30 | static int trigMask;
|
---|
| 31 |
|
---|
| 32 | static void dumpAvailTOIs(ostream& s);
|
---|
| 33 | };
|
---|
| 34 |
|
---|
| 35 | #define REGPROD(_x_) TOIManager::registerProducer(new _x_);
|
---|
| 36 | #define REGLLPROD(_x_,_blk_) TOIManager::registerLLProducer(new _x_, _blk_);
|
---|
| 37 |
|
---|
| 38 |
|
---|
| 39 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.