00001 #pragma once 00002 00034 namespace AxPipe { 00035 namespace Stock { 00036 class CPipeFindSync; 00037 } 00038 } 00039 00048 class AxPipe::Stock::CPipeFindSync : public AxPipe::CPipe { 00049 int m_iSkipTo; 00050 const unsigned char *m_pPattern; 00051 size_t m_cbPattern; 00052 size_t m_iNext; 00053 int m_iInvert; 00054 bool m_fSkipAfterSync; 00055 00056 void PumpBuf(size_t cbBuf); 00057 protected: 00058 void Out(AxPipe::CSeg *pSeg); 00059 00060 public: 00062 CPipeFindSync *Init(const void *p, size_t cb, bool fInvert = false, int iSkipTo = 1); 00063 };