---
name: "comedi_mark_buffer_written"
section: "3"
platform: "linux"
package: "libcomedi-dev"
version: "0.11.0+5-1.3+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/comedi_mark_buffer_written"
---

# comedi\_mark\_buffer\_written(3)

streaming buffer control

## NAME

comedi\_mark\_buffer\_written - streaming buffer control

## SYNOPSIS

```
#include <comedilib.h>
```

**int comedi\_mark\_buffer\_written(comedi\_t \*** *device***, unsigned int** *subdevice***, unsigned int** *num\_bytes***);**

## DESCRIPTION

The function **comedi\_mark\_buffer\_written** is used on a subdevice that has a Comedi output command in progress. It should only be used if you are using a **mmap** mapping to write data to Comedi's buffer (as opposed to calling **write** on the device file descriptor), since Comedi will automatically keep track of how many bytes have been transferred via **write** calls. This function is used to indicate that the next *num\_bytes* bytes in the buffer are valid and may be sent to the device.

## RETURN VALUE

On success, **comedi\_mark\_buffer\_written** returns the number of bytes successfully marked as written. The return value may be less than the *num\_bytes*. On failure, -1 is returned.

## AUTHORS

**David Schleef** \<ds@schleef.org\>

Author.

**Frank Mori Hess** \<fmhess@users.sourceforge.net\>

Author.

**Herman Bruyninckx** \<Herman.Bruyninckx@mech.kuleuven.ac.be\>

Author.

**Bernd Porr** \<tech@linux-usb-daq.co.uk\>

Author.

**Ian Abbott** \<abbotti@mev.co.uk\>

Author.

**Éric Piel** \<piel@delmic.com\>

Author.

## COPYRIGHT

Copyright © 1998-2003 David Schleef\
 Copyright © 2001-2003, 2005, 2008 Frank Mori Hess\
 Copyright © 2002-2003 Herman Bruyninckx\
 Copyright © 2012 Bernd Porr\
 Copyright © 2012 Ian Abbott\
 Copyright © 2012, 2015 Éric Piel\

This document is part of Comedilib. In the context of this document, the term "source code" as defined by the license is interpreted as the XML source.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 2.1 of the License.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
