libcamera v0.1.0+127-8e215127-dirty (2023-12-02T01:06:12+00:00)
Supporting cameras in Linux since 2019
fence.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: LGPL-2.1-or-later */
2/*
3 * Copyright (C) 2021, Google Inc.
4 *
5 * internal/fence.h - Synchronization fence
6 */
7
8#pragma once
9
12
13namespace libcamera {
14
15class Fence
16{
17public:
19
20 bool isValid() const { return fd_.isValid(); }
21 const UniqueFD &fd() const { return fd_; }
22
23 UniqueFD release() { return std::move(fd_); }
24
25private:
27
28 UniqueFD fd_;
29};
30
31} /* namespace libcamera */
Utilities to help constructing class interfaces.
#define LIBCAMERA_DISABLE_COPY_AND_MOVE(klass)
Disable copy and move construction and assignment of the klass.
Synchronization primitive to manage resources.
Definition: fence.h:16
bool isValid() const
Check if a Fence is valid.
Definition: fence.h:20
UniqueFD release()
Release the ownership of the file descriptor.
Definition: fence.h:23
const UniqueFD & fd() const
Retrieve a constant reference to the file descriptor.
Definition: fence.h:21
Fence(UniqueFD fd)
Create a Fence.
Definition: fence.cpp:82
unique_ptr-like wrapper for a file descriptor
Definition: unique_fd.h:18
bool isValid() const
Check if the UniqueFD owns a valid file descriptor.
Definition: unique_fd.h:61
Top-level libcamera namespace.
Definition: backtrace.h:17
File descriptor wrapper that owns a file descriptor.