# Ticker API - manage mediastreamer2 graphs.
[Mediastreamer2 API]

Ticker API to manage mediastreamer2 graphs. More...

## Typedefs
typedef uint64_t(* | MSTickerTimeFunc )(void *)
typedef struct _MSTicker | MSTicker
## Functions
MS2_PUBLIC MSTicker * | ms_ticker_new (void)
MS2_PUBLIC void | ms_ticker_set_name (MSTicker *ticker, const char *name)
MS2_PUBLIC int | ms_ticker_attach (MSTicker *ticker, MSFilter *f)
MS2_PUBLIC int | ms_ticker_detach (MSTicker *ticker, MSFilter *f)
MS2_PUBLIC void | ms_ticker_destroy (MSTicker *ticker)
MS2_PUBLIC void | ms_ticker_set_time_func (MSTicker *ticker, MSTickerTimeFunc func, void *user_data)
MS2_PUBLIC void | ms_ticker_print_graphs (MSTicker *ticker)

## Detailed Description

Ticker API to manage mediastreamer2 graphs.

This file provide the API needed to create, start and stop a graph.

## Typedef Documentation

MSTickerTimeFunc

Structure for method getting time in miliseconds from an external source.

MSTicker

Structure for ticker object.

## Function Documentation

MS2_PUBLIC MSTicker* ms_ticker_new | ( | void |  | ) |

Create a ticker that will be used to start and stop a graph.

Returns: MSTicker * if successfull, NULL otherwise.

MS2_PUBLIC void ms_ticker_set_name | ( | MSTicker * | ticker,
|  | const char * | name |
| ) |  |  |

Set a name to the ticker (used for logging)

MS2_PUBLIC int ms_ticker_attach | ( | MSTicker * | ticker,
|  | MSFilter * | f |
| ) |  |  |

Attach a chain of filters to a ticker. The processing chain will be executed until ms_ticker_detach will be called.

Parameters:

  | ticker | A MSTicker object.
  | f | A MSFilter object.

Returns: 0 if successfull, -1 otherwise.

MS2_PUBLIC int ms_ticker_detach | ( | MSTicker * | ticker,
|  | MSFilter * | f |
| ) |  |  |

Dettach a chain of filters to a ticker. The processing chain will no more be executed.

Parameters:

  | ticker | A MSTicker object.
  | f | A MSFilter object.

Returns: 0 if successfull, -1 otherwise.

MS2_PUBLIC void ms_ticker_destroy | ( | MSTicker * | ticker | ) |

Destroy a ticker.

Parameters:

  | ticker | A MSTicker object.

MS2_PUBLIC void ms_ticker_set_time_func | ( | MSTicker * | ticker,
|  | MSTickerTimeFunc | func,
|  | void * | user_data |
| ) |  |  |

Override MSTicker's time function. This can be used to control the ticker from an external time provider, for example the clock of a sound card.

Parameters:

  | ticker | A MSTicker object.
  | func | A replacement method for calculating "current time"
  | user_data | Any pointer to user private data.

MS2_PUBLIC void ms_ticker_print_graphs | ( | MSTicker * | ticker | ) |

Print on stdout all filters of a ticker. (INTERNAL: DO NOT USE)

Parameters:

  | ticker | A MSTicker object.