sgilmore10 opened a new issue, #41803:
URL: https://github.com/apache/arrow/issues/41803

   ### Describe the enhancement requested
   
   Now that #41656 has been closed, we should add MATLAB APIs for 
importing/exporting `arrow.tabular.RecordBatch`es using the C Data Interface 
format.
   
   The C Data Interface format import/export workflows would like this:
   
   ### Import into MATLAB
   
   ```matlab
   cArray = arrow.c.Array
   cSchema = arrow.c.Schema
   .
   .
   . 
   % Pass cArray and cSchema to export APIs of another Arrow language bindings 
to fill in C struct details
   .
   .
   .
   % Import Arrow RecordBatch from pre-populated C Data interface format C 
structs
   rb = arrow.tabular.RecordBatch.importFromC(cArray, cSchema);
   ```
   
   ### Export from MATLAB
   
   ```matlab
   .
   .
   . 
   % Create C Data Interface format ArrowArray and ArrowSchema C structs using 
APIs of another Arrow language binding ...
   .
   .
   .
   rb = arrow.recordBatch(table(1:10)')).
   % Export Arrow RecordBatch from MATLAB to C Data Interface format and fill 
in C struct details
   rb.exportToC(cArrayAddress, cSchemaAddress)
   .
   .
   .
   % Import Arrow RecordBatch from pre-populated C Data Interface format C 
structs using APIs of another Arrow language binding 
   ```
   
   We can implement this functionality using the C Data Interface format C++ 
APIS defined in 
https://github.com/apache/arrow/blob/main/cpp/src/arrow/c/bridge.h.
   
   
   ### Component(s)
   
   MATLAB


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to