文档目录

13.14. Intel® HLS Compiler Pro版管道API

pipe API相当于以下类声明:
template <class name,
          class dataT,
          size_t min_capacity = 0>
class pipe {
public:
  // Blocking
  static dataT read();
  static void write(dataT data);
  // Non-blocking
  static dataT read(bool &success);
  static void write(dataT data, bool &success);
}
其中的模板参数定义如下:
表 52.   pipe API模板参数
参数 描述
name 管道识别的基础类型。

通常是定义用户类别,位于用户命名空间(namespace)中。转发类型声明就已足够,无需定义类型。

dataT 管道内包含的数据包的数据类型。

该数据类型是成功的管道read()操作期间读取的数据类型,或者成功的管道write()操作期间被写入的数据类型。

该类型必须具有标准布局并且易于复制。

min_capacity 管道必须能够存储并且不被读出的最小字数(以dataT为单位)。

出于性能考虑,编译器可能会创建容量更大的管道。