File size: 515 Bytes
1ce325b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef UTIL_STREAM_LINE_INPUT_H
#define UTIL_STREAM_LINE_INPUT_H
namespace util {namespace stream {

class ChainPosition;

/* Worker that reads input into blocks, ensuring that blocks contain whole
 * lines.  Assumes that the maximum size of a line is less than the block size
 */
class LineInput {
  public:
    // Takes ownership upon thread execution.
    explicit LineInput(int fd);

    void Run(const ChainPosition &position);

  private:
    int fd_;
};

}} // namespaces
#endif // UTIL_STREAM_LINE_INPUT_H