A transparent, “lossy” C-struct containing only the core atomic data.
This can be extracted from an RKRConFrame handle for direct data access.
The caller is responsible for freeing the atoms array using free_c_frame.
Creates a new iterator for a .con file.
The caller OWNS the returned pointer and MUST call free_con_frame_iterator.
Returns NULL if there are no more frames or on error.
Consumes the builder and returns a finalized RKRConFrame handle.
The builder handle is invalidated after this call.
The caller OWNS the returned frame and MUST call free_rkr_frame.
Returns NULL on error.
Copies a header string line into a user-provided buffer.
This is a C style helper… where the user explicitly sets the buffer.
Returns the number of bytes written (excluding null terminator), or -1 on error.
Creates a new frame builder with the given cell dimensions, angles, and header lines.
The caller OWNS the returned pointer and MUST call free_rkr_frame_builder or
rkr_frame_builder_build.
Returns NULL on error.
Reads all frames from a .con file using mmap.
Returns an array of frame handles and sets num_frames to the count.
The caller OWNS both the array and each frame handle.
Free frames with free_rkr_frame and the array with free_rkr_frame_array.
Returns NULL on error.