Skip to content

Commit

Permalink
Updated documentation at the top of the header file.
Browse files Browse the repository at this point in the history
  • Loading branch information
jkuhlmann committed Feb 14, 2019
1 parent 7fc6d3f commit be75dd7
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 10 deletions.
11 changes: 1 addition & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,7 @@ if (result == cgltf_result_success)
Note that cgltf does not load the contents of extra files such as buffers or images into memory by default. You'll need to read these files yourself using URIs from `data.buffers[]` or `data.images[]` respectively.
For buffer data, you can alternatively call `cgltf_load_buffers`, which will use `FILE*` APIs to open and read buffer files.

## Reference
`cgltf_result cgltf_parse(const cgltf_options*, const void*, cgltf_size, cgltf_data**)` parses both glTF and GLB data. If this function returns `cgltf_result_success`, you have to call `cgltf_free()` on the created `cgltf_data*` variable.

`cgltf_options` is the struct passed to `cgltf_parse()` to control parts of the parsing process. You can use it to force the file type and provide memory allocation callbacks.

`cgltf_data` is the struct allocated and filled by `cgltf_parse()`. It generally mirrors the glTF format as described by the spec (see https://github.com/KhronosGroup/glTF/tree/master/specification/2.0).

`void cgltf_free(cgltf_data*)` frees the allocated `cgltf_data` variable.

`cgltf_result cgltf_validate(cgltf_data*)` is an optional function you can call to do additional checks to make sure the parsed glTF data is valid.
**For more in-depth documentation and a description of the public interface refer to the top of the `cgltf.h` file.**

## Support
cgltf supports core glTF 2.0:
Expand Down
43 changes: 43 additions & 0 deletions cgltf.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,49 @@
/**
* cgltf - a single-file glTF 2.0 parser written in C99.
*
* Version: 1.0
*
* Website: https://github.com/jkuhlmann/cgltf
*
* Distributed under the MIT License, see notice at the end of this file.
*
* Building:
* Include this file where you need the struct and function
* declarations. Have exactly one source file where you define
* `CGLTF_IMPLEMENTATION` before including this file to get the
* function definitions.
*
* Reference:
* `cgltf_result cgltf_parse(const cgltf_options*, const void*,
* cgltf_size, cgltf_data**)` parses both glTF and GLB data. If
* this function returns `cgltf_result_success`, you have to call
* `cgltf_free()` on the created `cgltf_data*` variable.
* Note that contents of external files for buffers and images are not
* automatically loaded. You'll need to read these files yourself using
* URIs in the `cgltf_data` structure.
*
* `cgltf_options` is the struct passed to `cgltf_parse()` to control
* parts of the parsing process. You can use it to force the file type
* and provide memory allocation callbacks. Should be zero-initialized
* to trigger default behavior.
*
* `cgltf_data` is the struct allocated and filled by `cgltf_parse()`.
* It generally mirrors the glTF format as described by the spec (see
* https://github.com/KhronosGroup/glTF/tree/master/specification/2.0).
*
* `void cgltf_free(cgltf_data*)` frees the allocated `cgltf_data`
* variable.
*
* `cgltf_result cgltf_load_buffers(const cgltf_options*, cgltf_data*,
* const char*)` can be optionally called to open and read buffer
* files using the `FILE*` APIs.
*
* `cgltf_result cgltf_parse_file(const cgltf_options* options, const
* char* path, cgltf_data** out_data)` can be used to open the given
* file using `FILE*` APIs and parse the data using `cgltf_parse()`.
*
* `cgltf_result cgltf_validate(cgltf_data*)` can be used to do additional
* checks to make sure the parsed glTF data is valid.
*/
#ifndef CGLTF_H_INCLUDED__
#define CGLTF_H_INCLUDED__
Expand Down

0 comments on commit be75dd7

Please sign in to comment.