PxCrypt v0.2.2
Encrypt data within an image
Loading...
Searching...
No Matches
data_translator.h
1#ifndef DATA_TRANSLATOR_H
2#define DATA_TRANSLATOR_H
3
4// Qt Includes
5#include <QRandomGenerator>
6
7// Qx Includes
8#include <qx/utility/qx-concepts.h>
9
10// Project Includes
11#include "medium_io/operate/px_access.h"
12
13namespace PxCryptPrivate
14{
17class DataTranslator
18{
19//-Instance Variables------------------------------------------------------------------------------------------------------
20private:
21 PxAccess& mAccess;
22
23//-Constructor---------------------------------------------------------------------------------------------------------
24public:
25 DataTranslator(PxAccess& access);
26
27//-Instance Functions----------------------------------------------------------------------------------------------
28private:
29 template<typename F>
30 requires Qx::defines_call_for_s<F, void, int, int>
31 bool translate(F procedure);
32
33 void weaveBits(quint8 bits, int count);
34 quint8 skimBits(int count);
35
36public:
37 bool weaveByte(quint8 byte);
38 bool skimByte(quint8& byte);
39};
40
42}
43
44#endif // DATA_TRANSLATOR_H