X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fpipe.h;h=b94d871e48426d57d9c88bc419bb659f46babebc;hp=2d4fc967d615d5520e20de6098c561ac49148850;hb=7966af5763c4aaca39df9bbfa9277ff15715c720;hpb=55dfb029ae73f7a8987c00154ffdddabdf4a1e8c diff --git a/src/common/pipe.h b/src/common/pipe.h index 2d4fc967d..b94d871e4 100644 --- a/src/common/pipe.h +++ b/src/common/pipe.h @@ -1,18 +1,8 @@ /* - * Copyright (C) 2013 - David Goulet + * Copyright (C) 2013 David Goulet * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License, version 2 only, as - * published by the Free Software Foundation. + * SPDX-License-Identifier: GPL-2.0-only * - * This program 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 General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef LTTNG_PIPE_H @@ -20,6 +10,11 @@ #include #include +#include + +#ifdef __cplusplus +extern "C" { +#endif enum lttng_pipe_state { LTTNG_PIPE_STATE_OPENED = 1, @@ -50,7 +45,7 @@ struct lttng_pipe { /* * Return 1 if read side is open else 0. */ -static inline int lttng_pipe_is_read_open(struct lttng_pipe *pipe) +static inline int lttng_pipe_is_read_open(const struct lttng_pipe *pipe) { return pipe->r_state == LTTNG_PIPE_STATE_OPENED ? 1 : 0; } @@ -58,46 +53,40 @@ static inline int lttng_pipe_is_read_open(struct lttng_pipe *pipe) /* * Return 1 if write side is open else 0. */ -static inline int lttng_pipe_is_write_open(struct lttng_pipe *pipe) +static inline int lttng_pipe_is_write_open(const struct lttng_pipe *pipe) { return pipe->w_state == LTTNG_PIPE_STATE_OPENED ? 1 : 0; } -static inline int lttng_pipe_get_readfd(struct lttng_pipe *pipe) +static inline int lttng_pipe_get_readfd(const struct lttng_pipe *pipe) { return pipe->fd[0]; } -static inline int lttng_pipe_get_writefd(struct lttng_pipe *pipe) +static inline int lttng_pipe_get_writefd(const struct lttng_pipe *pipe) { return pipe->fd[1]; } -LTTNG_HIDDEN struct lttng_pipe *lttng_pipe_open(int flags); -LTTNG_HIDDEN struct lttng_pipe *lttng_pipe_named_open(const char *path, mode_t mode, int flags); -LTTNG_HIDDEN int lttng_pipe_write_close(struct lttng_pipe *pipe); -LTTNG_HIDDEN int lttng_pipe_read_close(struct lttng_pipe *pipe); /* Close both side of pipe. */ -LTTNG_HIDDEN int lttng_pipe_close(struct lttng_pipe *pipe); -LTTNG_HIDDEN void lttng_pipe_destroy(struct lttng_pipe *pipe); -LTTNG_HIDDEN ssize_t lttng_pipe_read(struct lttng_pipe *pipe, void *buf, size_t count); -LTTNG_HIDDEN ssize_t lttng_pipe_write(struct lttng_pipe *pipe, const void *buf, size_t count); /* Returns and releases the read end of the pipe. */ -LTTNG_HIDDEN int lttng_pipe_release_readfd(struct lttng_pipe *pipe); /* Returns and releases the write end of the pipe. */ -LTTNG_HIDDEN int lttng_pipe_release_writefd(struct lttng_pipe *pipe); +#ifdef __cplusplus +} +#endif + #endif /* LTTNG_PIPE_H */