QtPass
2.0.0
Developer documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
simpletransaction.h
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2017 Anne Jan Brouwer
2
// SPDX-License-Identifier: GPL-3.0-or-later
8
#ifndef SRC_SIMPLETRANSACTION_H_
9
#define SRC_SIMPLETRANSACTION_H_
10
11
#include "
enums.h
"
12
#include <queue>
13
29
class
SimpleTransaction
{
31
int
transactionDepth
{0};
36
Enums::PROCESS
lastInTransaction
{
Enums::INVALID
};
41
std::queue<std::pair<Enums::PROCESS, Enums::PROCESS>>
transactionQueue
;
42
43
public
:
47
SimpleTransaction
() {}
52
void
transactionStart
();
60
void
transactionAdd
(
Enums::PROCESS
process);
68
void
transactionEnd
(
Enums::PROCESS
process);
77
auto
transactionIsOver
(
Enums::PROCESS
current) ->
Enums::PROCESS
;
78
};
79
80
#endif
// SRC_SIMPLETRANSACTION_H_
SimpleTransaction::transactionAdd
void transactionAdd(Enums::PROCESS process)
Note that process has been queued.
Definition
simpletransaction.cpp:21
SimpleTransaction::transactionIsOver
auto transactionIsOver(Enums::PROCESS current) -> Enums::PROCESS
Tell whether the process that just finished ends the oldest pending transaction, and take that transa...
Definition
simpletransaction.cpp:41
SimpleTransaction::transactionStart
void transactionStart()
Open a transaction: the processes added until the matching transactionEnd() are reported as one opera...
Definition
simpletransaction.cpp:16
SimpleTransaction::transactionEnd
void transactionEnd(Enums::PROCESS process)
Close the transaction opened by the matching transactionStart().
Definition
simpletransaction.cpp:30
SimpleTransaction::transactionDepth
int transactionDepth
How many transactionStart() calls are still open.
Definition
simpletransaction.h:31
SimpleTransaction::transactionQueue
std::queue< std::pair< Enums::PROCESS, Enums::PROCESS > > transactionQueue
Closed transactions awaiting completion, oldest first: the process that ends each one,...
Definition
simpletransaction.h:41
SimpleTransaction::SimpleTransaction
SimpleTransaction()
Construct a SimpleTransaction in its initial idle state.
Definition
simpletransaction.h:47
SimpleTransaction::lastInTransaction
Enums::PROCESS lastInTransaction
The process most recently added to the open transaction, or Enums::INVALID when none was added yet.
Definition
simpletransaction.h:36
enums.h
The Enums namespace: clipboard behaviour and the identifiers of the subprocess kinds QtPass queues.
Enums::PROCESS
PROCESS
Identifies different subprocess operations used in QtPass.
Definition
enums.h:43
Enums::INVALID
@ INVALID
Definition
enums.h:63
src
simpletransaction.h
Generated by
1.18.0