Functions
Time Domain Handling
CANlib

Creating and handling Time Domains. More...

## Functions
kvStatus | kvTimeDomainCreate (kvTimeDomain *domain)
kvStatus | kvTimeDomainDelete (kvTimeDomain domain)
kvStatus | kvTimeDomainResetTime (kvTimeDomain domain)
kvStatus | kvTimeDomainGetData (kvTimeDomain domain, kvTimeDomainData *data, size_t bufsiz)
kvStatus | kvTimeDomainAddHandle (kvTimeDomain domain, const CanHandle hnd)
kvStatus | kvTimeDomainRemoveHandle (kvTimeDomain domain, const CanHandle hnd)

## Detailed Description

Creating and handling Time Domains.

## Function Documentation

## ◆ kvTimeDomainAddHandle()

kvStatus kvTimeDomainAddHandle | ( | kvTimeDomain | domain,
|  | const CanHandle | hnd
| ) |  |

This routine adds an open channel handle to a domain.

Note
  A time domain is a set of channels with a common time base.

Parameters

  [in] | domain | An opaque variable set by kvTimeDomainCreate() that identifies the domain to add a handle to.
  [in] | hnd | A handle to an open channel.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainXxx Example
  kvTimeDomainCreate(), kvTimeDomainRemoveHandle()

## ◆ kvTimeDomainCreate()

kvStatus kvTimeDomainCreate | ( | kvTimeDomain * | domain | ) |

This routine creates an empty time domain.

The variable is set by this function and then used in later calls to other functions using a kvTimeDomain.

Time domains created by kvTimeDomainCreate() can be destroyed with a call to kvTimeDomainDelete().

Note
  A time domain is a set of channels with a common time base.

Parameters

  [out] | domain | A pointer to a caller allocated, opaque variable of type kvTimeDomain that holds data to identify a particular time domain.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainXxx Example
  kvTimeDomainDelete()

## ◆ kvTimeDomainDelete()

kvStatus kvTimeDomainDelete | ( | kvTimeDomain | domain | ) |

This is a cleanup routine that deletes all members of a domain and then deletes the domain itself.

Note
  A time domain is a set of channels with a common time base.

Parameters

  [in] | domain | An opaque variable set by kvTimeDomainCreate() that identifies the domain to be deleted.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainXxx Example
  kvTimeDomainCreate()

## ◆ kvTimeDomainGetData()

kvStatus kvTimeDomainGetData | ( | kvTimeDomain | domain,
|  | kvTimeDomainData * | data,
|  | size_t | bufsiz
| ) |  |

This routine collects some data on a time domain.

Note
  A time domain is a set of channels with a common time base.

Parameters

  [in] | domain | An opaque variable set by kvTimeDomainCreate() that identifies the domain to add a handle to.
  [out] | data | A pointer to a kvTimeDomainData that is to be filled by the function.
  [in] | bufsiz | The size in bytes of the kvTimeDomainData struct.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainXxx Example
  kvTimeDomainCreate()

## ◆ kvTimeDomainRemoveHandle()

kvStatus kvTimeDomainRemoveHandle | ( | kvTimeDomain | domain,
|  | const CanHandle | hnd
| ) |  |

This routine removes an open channel handle from a domain.

Note
  A time domain is a set of channels with a common time base.

Parameters

  [in] | domain | An opaque variable set by kvTimeDomainCreate() that identifies the domain to remove a handle from.
  [in] | hnd | A handle to an open channel.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainCreate(), kvTimeDomainAddHandle()

## ◆ kvTimeDomainResetTime()

kvStatus kvTimeDomainResetTime | ( | kvTimeDomain | domain | ) |

This routine resets the time on all members of a time domain.

After a call to this routine timestamps from all channels with MagiSync™ running have no offset at all any longer. The same applies for channels that reside on the same physical interface.

Note
  A time domain is a set of channels with a common time base.

Parameters

  [in] | domain | An opaque variable set by kvTimeDomainCreate() that identifies the domain to reset the time on.

Returns
  canOK (zero) if success
  canERR_xxx (negative) if failure

See also
  kvTimeDomainXxx Example
  kvTimeDomainCreate()