PxCrypt v0.1
Encrypt data within an image
Loading...
Searching...
No Matches
px_access_read.h
1#ifndef PX_ACCESS_READ_H
2#define PX_ACCESS_READ_H
3
4// Qt Includes
5#include <QImage>
6
7// Project Includes
8#include "../encdec.h"
9#include "ch_sequence_generator.h"
10#include "px_sequence_generator.h"
11
12namespace PxCrypt
13{
16class PxAccessRead
17{
18//-Instance Variables------------------------------------------------------------------------------------------------------
19private:
20 const QRgb* mPixels;
21 quint8 mBpc;
22 EncStrat mStrat;
23 PxSequenceGenerator mPxSequence;
24 ChSequenceGenerator mChSequence;
25
26 quint64 mCurrentIndex;
27 Channel mCurrentChannel;
28
29 bool mAtEnd;
30
31//-Constructor---------------------------------------------------------------------------------------------------------
32public:
33 PxAccessRead(const QImage* image, QByteArrayView seed);
34
35//-Instance Functions----------------------------------------------------------------------------------------------
36private:
37 bool advance();
38 quint8 readMetaValue();
39 void readMetaPixels();
40
41public:
42 quint8 bpc() const;
43 EncStrat strat() const;
44
45 bool hasNextPixel() const;
46 bool pixelExhausted() const;
47 bool atEnd() const;
48
49 bool nextPixel();
50 bool nextChannel();
51
52 const QRgb& pixel() const;
53
54 quint64 index() const;
55 Channel channel() const;
56 quint8 channelValue() const;
57 quint8 red() const;
58 quint8 green() const;
59 quint8 blue() const;
60 quint8 alpha() const;
61};
62
64}
65
66#endif // PX_ACCESS_READ_H
The PxCrypt namespace is the main namespace through which all functionality of the PxCrypt library is...
Definition decode_error.cpp:5