Tpetra parallel linear algebra Version of the Day
Loading...
Searching...
No Matches
Tpetra_Access.hpp
1// @HEADER
2// *****************************************************************************
3// Tpetra: Templated Linear Algebra Services Package
4//
5// Copyright 2008 NTESS and the Tpetra contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef TPETRA_ACCESS_HPP
11#define TPETRA_ACCESS_HPP
12
13namespace Tpetra
14{
15namespace Access
16{
17 // Structs for Access tags, these should not be used by user code
18 struct ReadOnlyStruct {};
19 struct OverwriteAllStruct {};
20 struct ReadWriteStruct {};
21
22
23 //Tag indicating intent to read up-to-date data, but not modify.
24 constexpr struct ReadOnlyStruct ReadOnly = ReadOnlyStruct();
25 //Tag indicating intent to completely overwrite existing data.
26 constexpr struct OverwriteAllStruct OverwriteAll = OverwriteAllStruct();
27 //Tag indicating intent to both read up-to-date data and modify it.
28 constexpr struct ReadWriteStruct ReadWrite = ReadWriteStruct();
29}
30}
31
32#endif
33
Namespace Tpetra contains the class and methods constituting the Tpetra library.