Heart 1.3.848.aa44c26
Heart is base back end library for your c++ Qt projects.
|
The MultiversionData class This class add support for multiple versions of ne command/package. If you need to add support multiple versions make your pakcage class children of the MultiversionData class. More...
#include <multiversiondata.h>
Public Member Functions | |
MultiversionData (const QMap< unsigned short, SerializationBox > &serializers) | |
MultiversionData main constructor. | |
const DistVersion & | packageVersion () const |
packageVersion This method should be return number of the pacakge version. | |
QDataStream & | fromStream (QDataStream &stream) override final |
fromStream This method should be read all bytes from the stream object and full the current object. | |
QDataStream & | toStream (QDataStream &stream) const override final |
fromStream This method should be write all members of the current object to the stream object. | |
QByteArray | toBytesOf (const DistVersion &version) const |
toBytesOf This is overload method of StreamBase::toBytes for support multi versions of packages. | |
QDataStream & | toStreamOf (QDataStream &stream, const DistVersion &version) const |
toStreamOf This overrload of the base toStream method for support the multi version packages. | |
bool | toPackage (Package &package, const DistVersion &reqVersion, unsigned int triggerHash=0) const override final |
toPackage This method convert this class object to the package. For more info see Package class. | |
Public Member Functions inherited from QH::PKG::AbstractData | |
~AbstractData () override | |
virtual unsigned short | cmd () const =0 |
cmd - This is command of this object, (for generate cmd use macross QH_PACKAGE) | |
virtual QString | cmdString () const =0 |
cmdString - This is command string of this object, (for generate cmd use macross QH_PACKAGE) | |
virtual bool | isValid () const |
isValid This method check current object to valid. | |
QString | toString () const override |
toString - Return a string implementation for this object. | |
template<class C , class... Args> | |
C * | create (Args &&... args) const |
create - This is factory method for create a new object. | |
void | fromPakcage (const Package &pkg) |
fromPakcage - This method initialize the current object from a package class object. | |
Public Member Functions inherited from QH::StreamBase | |
StreamBase () | |
virtual | ~StreamBase () |
bool | fromBytes (const QByteArray &data) |
fromBytes This method provide initialization of object from byte array. | |
QByteArray | toBytes () const |
toBytes This method convert a current object to bytes array. | |
bool | fromBase64 (const QString &data) |
fromBase64 This method provide initialization of object from the base64 string. | |
bool | fromBase64 (const QByteArray &data) |
fromBase64 This method provide initialization of object from the base64 string. | |
QByteArray | toBase64 () const |
toBase64 This method convert a current object to the base64 string. | |
template<class T > | |
T & | copy (const StreamBase &right) |
copy This is base copy method for all StreamBase structures. Default implementation it is copy from byteArray. | |
template<class T > | |
bool | compare (const T &right) |
compare This method compare array signatures of this and right objects. | |
Additional Inherited Members | |
Static Public Member Functions inherited from QH::PKG::AbstractData | |
static unsigned int | command () |
command This static method that return glaball code of this object. | |
static QString | commandText () |
commandText This method return text of package command | |
Protected Member Functions inherited from QH::PKG::AbstractData | |
AbstractData () | |
AbstractData - Base constructor of this object. | |
Protected Member Functions inherited from QH::StreamBase | |
virtual int | parsingVersion () const |
parsingVersion this method return parsing version of Qt. By Default is 0 (last available parsing). see https://doc.qt.io/qt-6/qdatastream.html#Version-enum | |
virtual unsigned int | typeId () const |
typeId This method return id of type. | |
The MultiversionData class This class add support for multiple versions of ne command/package. If you need to add support multiple versions make your pakcage class children of the MultiversionData class.
Example:
Definition at line 67 of file multiversiondata.h.
QH::PKG::MultiversionData::MultiversionData | ( | const QMap< unsigned short, SerializationBox > & | serializers | ) |
MultiversionData main constructor.
serializers | this is map of the all supported versions. |
Definition at line 18 of file multiversiondata.cpp.
|
finaloverridevirtual |
fromStream This method should be read all bytes from the stream object and full the current object.
stream | This is Qt stream object. |
Examle of base simple implementation:
Implements QH::StreamBase.
Definition at line 27 of file multiversiondata.cpp.
const DistVersion & QH::PKG::MultiversionData::packageVersion | ( | ) | const |
packageVersion This method should be return number of the pacakge version.
Definition at line 113 of file multiversiondata.cpp.
QByteArray QH::PKG::MultiversionData::toBytesOf | ( | const DistVersion & | version | ) | const |
toBytesOf This is overload method of StreamBase::toBytes for support multi versions of packages.
version | This is required version pacakge. |
Definition at line 64 of file multiversiondata.cpp.
|
finaloverridevirtual |
toPackage This method convert this class object to the package. For more info see Package class.
package | This is return value of Package class. |
reqVersion | This is required version. This method create package of the needed version. |
triggerHash | This is hash of the package the current class is responding to. |
Reimplemented from QH::PKG::AbstractData.
Definition at line 95 of file multiversiondata.cpp.
|
finaloverridevirtual |
fromStream This method should be write all members of the current object to the stream object.
stream | This is Qt stream object. |
Examle of base simple implementation:
Implements QH::StreamBase.
Definition at line 49 of file multiversiondata.cpp.
QDataStream & QH::PKG::MultiversionData::toStreamOf | ( | QDataStream & | stream, |
const DistVersion & | version | ||
) | const |
toStreamOf This overrload of the base toStream method for support the multi version packages.
stream | this is stream object. |
version | this is custom version of parsing function. |
Definition at line 76 of file multiversiondata.cpp.