]> git.proxmox.com Git - ceph.git/blame - ceph/src/arrow/docs/source/cpp/api/ipc.rst
import quincy 17.2.0
[ceph.git] / ceph / src / arrow / docs / source / cpp / api / ipc.rst
CommitLineData
1d09f67e
TL
1.. Licensed to the Apache Software Foundation (ASF) under one
2.. or more contributor license agreements. See the NOTICE file
3.. distributed with this work for additional information
4.. regarding copyright ownership. The ASF licenses this file
5.. to you under the Apache License, Version 2.0 (the
6.. "License"); you may not use this file except in compliance
7.. with the License. You may obtain a copy of the License at
8
9.. http://www.apache.org/licenses/LICENSE-2.0
10
11.. Unless required by applicable law or agreed to in writing,
12.. software distributed under the License is distributed on an
13.. "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14.. KIND, either express or implied. See the License for the
15.. specific language governing permissions and limitations
16.. under the License.
17
18.. default-domain:: cpp
19.. highlight:: cpp
20
21=========
22Arrow IPC
23=========
24
25IPC options
26===========
27
28.. doxygenstruct:: arrow::ipc::IpcReadOptions
29 :members:
30
31.. doxygenstruct:: arrow::ipc::IpcWriteOptions
32 :members:
33
34Reading IPC streams and files
35=============================
36
37Blocking API
38------------
39
40Use either of these two classes, depending on which IPC format you want
41to read. The file format requires a random-access file, while the stream
42format only requires a sequential input stream.
43
44.. doxygenclass:: arrow::ipc::RecordBatchStreamReader
45 :members:
46
47.. doxygenclass:: arrow::ipc::RecordBatchFileReader
48 :members:
49
50Event-driven API
51----------------
52
53To read an IPC stream in event-driven fashion, you must implement a
54:class:`~arrow::ipc::Listener` subclass that you will pass to
55:class:`~arrow::ipc::StreamDecoder`.
56
57.. doxygenclass:: arrow::ipc::Listener
58 :members:
59
60.. doxygenclass:: arrow::ipc::StreamDecoder
61 :members:
62
63Statistics
64----------
65
66.. doxygenstruct:: arrow::ipc::ReadStats
67 :members:
68
69Writing IPC streams and files
70=============================
71
72Blocking API
73------------
74
75The IPC stream format is only optionally terminated, whereas the IPC file format
76must include a terminating footer. Thus a writer of the IPC file format must be
77explicitly finalized with :func:`~arrow::ipc::RecordBatchWriter::Close()` or the resulting
78file will be corrupt.
79
80.. doxygengroup:: record-batch-writer-factories
81 :content-only:
82
83.. doxygenclass:: arrow::ipc::RecordBatchWriter
84 :members:
85
86Statistics
87----------
88
89.. doxygenstruct:: arrow::ipc::WriteStats
90 :members: