AllianceDB  0.0.1
AllianceDB is an open-source suite, including benchmarks and libs for evaluating and improving stream operation algorithms on modern hardwares.
AbstractLazyWS.h
Go to the documentation of this file.
1 
2 //
3 // Created by tony on 10/03/22.
4 //
5 
6 #ifndef _WINDOWSLIDER_ABSTRACTLAZYWS_H_
7 #define _WINDOWSLIDER_ABSTRACTLAZYWS_H_
8 #include <Common/Types.h>
11 namespace INTELLI {
41  protected:
42  vector<AbstractLazyJPPtr> jps;
43  size_t period = 0;
44  size_t windowCnt = 0;
45  virtual void inlineMain();
46 
47  public:
48  AbstractLazyWS() {
49  reset();
50  nameTag = "LWJ";
51  }
52 
58  AbstractLazyWS(size_t sLen, size_t rLen) : AbstractWS(sLen, rLen) {
59  nameTag = "LWJ";
60  }
61 
62  //init the join processors
67  virtual void initJoinProcessors();
68 
72  virtual void terminateJoinProcessors();
73 
77  virtual void waitAckFromJoinProcessors();
78 
79  //get the join result
86  virtual size_t getJoinResult();
87 
88 };
89 }
90 
91 #endif //ALIANCEDB_SRC_WINDOWSLIDER_ABSTRACTLAZYWS_H_
The base class and abstraction of C++20 thread, and it can be derived into other threads.
Definition: AbstractC20Thread.h:28
An abstraction of lazy window slider, also inherited by other lazy window slider.
Definition: AbstractLazyWS.h:40
AbstractLazyWS(size_t sLen, size_t rLen)
to init the slider with specific length of queue
Definition: AbstractLazyWS.h:58
virtual void waitAckFromJoinProcessors()
to wait the response of join processors
virtual void inlineMain()
The inline 'main" function of thread, as an interface.
virtual size_t getJoinResult()
to get the result of join
virtual void terminateJoinProcessors()
to terminate the join processors
virtual void initJoinProcessors()
to init the initJoinProcessors
An abstraction of window slider, also inherited by both eager and lazy.
Definition: AbstractWS.h:41
void reset()
reset everything needed
Definition: AbstractWS.h:137
Definition: DatasetTool.h:10