# Reader Interface

All custom readers use the reader interface defined in `kvcfsr.h`. The members of this structure are:

    fpAllocateContext()
    fpInitDoc()
    fpFillBuffer()
    fpFreeContext()
    fpHotSpothit()
    fpGetSummaryInfo()
    fpOpenStream()
    fpCloseStream()
    fpGetURL()
    fpGetCharSet()

NOTE: `fpHotSpothit()` and `fpGetURL()` are currently reserved and must be `NULL`.

## Function Flow

The structured access layer calls the functions as follows:

1. `fpAllocateContext()` is called and returns a pointer to the global context structure.
2. After further processing within the structured access layer, `fpInitDoc()` is called. This function performs all required initialization for the global context structure and then returns control to the structured access layer.
3. After further processing within the structured access layer, the `fpFillBuffer()` function is called repeatedly until the document is completely parsed.
4. Finally, `fpFreeContext()` is called. This function frees all memory allocated within the custom reader and then returns control to the structured access layer.

Related Topics

- Functions

_FT_HTML5_bannerTitle.htm