Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F1037407
kazv-file.hpp
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
1 KB
Referenced Files
None
Subscribers
None
kazv-file.hpp
View Options
/*
* This file is part of kazv.
* SPDX-FileCopyrightText: 2022-2023 nannanko <nannanko@kazv.moe>
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
#pragma once
#include
<aes-256-ctr.hpp>
#include
<QObject>
#include
<QFile>
#include
<QString>
#include
<QByteArray>
#include
<QSaveFile>
#include
<memory>
#include
<optional>
struct
KazvFilePrivate
;
class
KazvFile
:
public
QFile
{
Q_OBJECT
std
::
unique_ptr
<
KazvFilePrivate
>
m_d
;
public
:
KazvFile
(
const
QString
&
name
,
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
,
QObject
*
parent
);
KazvFile
(
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
,
QObject
*
parent
);
KazvFile
(
const
QString
&
name
,
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
);
KazvFile
(
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
);
~
KazvFile
();
QByteArray
hash
()
const
;
protected
:
qint64
readData
(
char
*
data
,
qint64
len
)
override
;
};
struct
KazvSaveFilePrivate
;
class
KazvSaveFile
:
public
QSaveFile
{
Q_OBJECT
std
::
unique_ptr
<
KazvSaveFilePrivate
>
m_d
;
public
:
KazvSaveFile
(
const
QString
&
name
,
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
,
QObject
*
parent
);
KazvSaveFile
(
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
,
QObject
*
parent
);
KazvSaveFile
(
const
QString
&
name
,
std
::
optional
<
Kazv
::
AES256CTRDesc
>
aes
);
~
KazvSaveFile
();
QByteArray
hash
()
const
;
protected
:
qint64
writeData
(
const
char
*
data
,
qint64
len
)
override
;
};
File Metadata
Details
Attached
Mime Type
text/x-c++
Expires
Wed, May 14, 7:14 AM (1 d, 10 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
87000
Default Alt Text
kazv-file.hpp (1 KB)
Attached To
Mode
rK kazv
Attached
Detach File
Event Timeline
Log In to Comment