public void Find(FindByteDataOption findByteDataOption) { _startIndex = findByteDataOption.SearchStartIndex; _matchCase = findByteDataOption.MatchCase; FindByteDataEventArgs args = new FindByteDataEventArgs(); if (findByteDataOption.SearchBytes == null) { args.FoundPosition = -1; OnFindPositionFound(args); return; } if (findByteDataOption.SearchDirection == SearchDirection.Direction_Up) { args.FoundPosition = FindUp(findByteDataOption); } else { args.FoundPosition = FindDown(findByteDataOption); } OnFindPositionFound(args); }
protected virtual void OnFindPositionFound(FindByteDataEventArgs e) { PositionFound?.Invoke(this, e); }