Engee 文档

Binary File Reader

页面进行中。

从二进制文件中读取数据

类型: Binary File Reader

图书馆中的路径:

/Signal Operations/Sources/Binary File Reader

说明

Binary File Reader 程序块从二进制文件中读取多通道信号数据。程序块读取数据前的标头。 File header 参数指定了标头的结构。您可以使用块参数指定数据的类型、大小和复杂程度。

首次读取文件时,程序块先读取文件头,然后读取数据。在后续调用中,程序块将读取剩余数据。当读取到文件末尾时,程序块会返回指定数据类型、大小和复杂度的 0。程序块既可以从程序块*Binary File Writer* 写入的文件中读取数据,也可以从任何其他二进制文件中读取数据。

端口

输出

# 数据 — 二进制数据
标量 | 向量 | 矩阵

Details

程序块从参数 File name 指定的二进制文件中读取数据。输出数据的维数为 Samples per frameNumber of channels 。程序块可以读取浮点和整数数据。输入数据可以是实数或复数。如果数据是复数,程序块将以实部和虚部交替的形式读取数据。读取块假定使用主机上设置的标准默认字节顺序。

只要 Output end-of-file indicator . 未被选中,该端口就没有名称。

数据类型

Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

复数支持

# EOF — 文件结束指示符
0 | 1

Details

当数据块到达文件末尾时,端口输出 1。否则,端口输出 0

依赖关系

要使用该端口,请选择复选框 Output end-of-file indicator

数据类型

Bool.

复数支持

参数

Main

# File name — 文件名

Details

块读取数据的文件名。如果文件不在当前目录下,请指定文件的完整路径。

默认值

Untitled.bin

程序使用名称

Filename

可调谐

可计算

# File header — 文件头

Details

如果文件不包含页眉,字段应包含空括号 ()。如果使用了文件头,则应在字段中输入一个命名的元组(field1 = value, …​, fieldN = valueN),值可以是字符串、数字、一维数字向量和二维数字矩阵。

默认值

()

程序使用名称

HeaderStructure

可调谐

可计算

# Storage data type — 文件数据类型
Float64 | Float32 | Int8 | Int16 | Int32 | Int64 | UInt8 | UInt16 | UInt32 | UInt64

Details

文件中存储的数据类型。该参数定义 data 端口的输出数据类型。

Float64 | Float32 | Int8 | Int16 | Int32 | Int64 | UInt8 | UInt16 | UInt32 | UInt64

默认值

Float64

程序使用名称

DataType

可调谐

可计算

# Samples per frame — 输出信号的样本数
Integer

Details

定义输出矩阵的行数。输出矩阵的尺寸为 Samples per frame by Number of channels 。在文件结束时,如果输出矩阵未被填满,程序块将用零填充矩阵,使其成为全尺寸矩阵。

默认值

1024

程序使用名称

SamplesPerFrame

可调谐

可计算

# Data is complex — 数据的全面性
Logical

Details

如果选中该复选框,读取块会将文件中的数据视为复数。程序块以实部和虚部交替的方式读取数据,并输出复数值。

例如,如果程序块被配置为读取 "2 "乘 "2 "矩阵的复数数据,则数据"[1 5 2 6 3 7 4 8]"将被读取为"[1 2; 3 4]+1j*[5 6; 7 8]"。如果程序块被配置为读取真实数据,则程序块读取的数据为`[1 5; 2 6]`。

默认值

false (关掉)

程序使用名称

isDataComplex

可调谐

可计算

# Number of channels — 输出信号的通道数
Integer

Details

指定输出矩阵的列数。该参数定义了文件中存储的每个时间瞬时的连续交错数据样本数。输出矩阵的尺寸为 Samples per frame by Number of channels 。在文件结束时,如果输出矩阵未填满,程序块将用零填充矩阵,使其成为全尺寸矩阵。

默认值

1

程序使用名称

NumChannels

可调谐

可计算

# Output end-of-file indicator — 文件结束指示器
Logical

Details

如果选中此选项,程序块将多出一个 EOF 输出端口。当代码块到达文件末尾时,端口输出 "1"。否则,端口输出 0

默认值

false (关掉)

程序使用名称

OutputEOF

可调谐

可计算

# SampleTime (s) — 采样期
SampleTime (real number / vector of two real numbers)

Details

控制模块输出端口的采样周期。该值为 ,其中 为信号数据的采样频率。输出端口的采样周期等于 Samples per frameSampleTime (s) 参数值的乘积。

默认值

1

程序使用名称

SampleTime

可调谐

可计算

# Indexing mode — 读取矩阵的索引顺序
Row-major | Column-major

Details

选择程序块读取数据的方式:

  • Row-major- 读取数据时考虑到矩阵是逐行写入的;

  • Column-major- 读取数据时考虑到矩阵是按列写入的。

Row-major | Column-major

默认值

Row-major

程序使用名称

IndexingMode

可调谐

可计算