source: icGREP/icgrep-devel/icgrep/kernels/streams_merge.h @ 5805

Last change on this file since 5805 was 5440, checked in by nmedfort, 23 months ago

Large refactoring step. Removed IR generation code from Kernel (formally KernelBuilder?) and moved it into the new KernelBuilder? class.

File size: 672 bytes
Line 
1/*
2 *  Copyright (c) 2017 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 */
5#ifndef STREAMSMERGE_H
6#define STREAMSMERGE_H
7
8#include "kernel.h"
9namespace IDISA { class IDISA_Builder; }
10
11namespace kernel {
12
13class StreamsMerge : public BlockOrientedKernel {
14public:
15   
16    StreamsMerge(const std::unique_ptr<kernel::KernelBuilder> & iBuilder, unsigned streamsPerSet=1, unsigned inputSets = 1);
17   
18protected:
19   
20    void generateDoBlockMethod(const std::unique_ptr<kernel::KernelBuilder> & iBuilder) override;
21   
22private:
23    const unsigned mStreamsPerSet;
24    const unsigned mInputSets;
25};
26
27}
28   
29#endif
30
Note: See TracBrowser for help on using the repository browser.