---
name: "cs_init"
section: "3"
platform: "linux"
package: "clearsilver-dev"
version: "0.10.5-6+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/cs_init"
---

# cs\_init(3)

create and initialize a CS context

## NAME

cs\_init  - create and initialize a CS context

## SYNOPSIS

```
#include <cs/cs.h>
```

```
NEOERR *cs_init (CSPARSE **parse, HDF *hdf);
```

## ARGUMENTS

parse - a pointer to a pointer to a CSPARSE structure that\
 will be created\
 hdf - the HDF dataset to be used during parsing and rendering

## DESCRIPTION

cs\_init will create a CSPARSE structure and initialize it.  This structure maintains the state and information necessary for parsing and rendering a CS template.

MT-Level: cs routines perform no locking, and neither do hdf routines.  They should be safe in an MT environment as long as they are confined to a single thread.

## RETURN VALUE

parse will contain a pointer to the allocated CSPARSE\
 structure.  This structure will be deallocated with\
 cs\_destroy()

## SEE ALSO

[**cs\_dump**(3)](/cs_dump/3.md), [**cs\_destroy**(3)](/cs_destroy/3.md), [**cs\_render**(3)](/cs_render/3.md), [**cs\_register\_esc\_strfunc**(3)](/cs_register_esc_strfunc/3.md), **cs\_arg\_parsev**(3), [**cs\_register\_fileload**(3)](/cs_register_fileload/3.md), [**cs\_init**(3)](/cs_init/3.md), [**cs\_register\_strfunc**(3)](/cs_register_strfunc/3.md), **cs\_arg\_parse**(3), [**cs\_parse\_string**(3)](/cs_parse_string/3.md), [**cs\_parse\_file**(3)](/cs_parse_file/3.md), **=**(3), **cs\_register\_function**
