Heart 1.3.842.34c2ab5
Heart is base back end library for your c++ Qt projects.
QH::PKG::UniversalData Class Reference

The UniversalData class contains all data of object in the QMap Use this package if you want to change your packages in prodaction. More...

#include <universaldata.h>

Inheritance diagram for QH::PKG::UniversalData:
Inheritance graph
Collaboration diagram for QH::PKG::UniversalData:
Collaboration graph

Public Member Functions

 UniversalData ()
 
void setValue (int key, const QVariant &value)
 setValue This method sets new value for the filed. Works like a insert method of the QMap
 
const QVariant & value (int key, const QVariant &defaultVal={}) const
 value this method return value of the key.
 
QVariant * ref (int key)
 ref This method return pointer to the object If this object is not exists return nullptr
 
- 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 toPackage (Package &package, const DistVersion &reqVersion, unsigned int triggerHash=0) const
 toPackage This method convert this class object to the package. For more info see Package class.
 
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.
 

Protected Member Functions

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.
 
- 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.
 

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
 

Detailed Description

The UniversalData class contains all data of object in the QMap Use this package if you want to change your packages in prodaction.

Example:

class AuthRequest: public QH::PKG::UniversalData
{
QH_PACKAGE(RC::API::V4::AuthRequest)
enum Filds{
UserId = 0
};
public:
AuthRequest();
bool isValid() const override;
QByteArray userId() const;
void setUserId(const QByteArray &newUserId);
};
QByteArray AuthRequest::userId() const {
return value(UserId).toByteArray();
}
void AuthRequest::setUserId(const QByteArray &newUserId) {
setValue(UserId, newUserId);
}
#define QH_PACKAGE(S)
QH_PACKAGE This macross prepare data to send and create a global id for package. For get global id us...
The UniversalData class contains all data of object in the QMap Use this package if you want to chang...
void setValue(int key, const QVariant &value)
setValue This method sets new value for the filed. Works like a insert method of the QMap
const QVariant & value(int key, const QVariant &defaultVal={}) const
value this method return value of the key.

Definition at line 50 of file universaldata.h.

Constructor & Destructor Documentation

◆ UniversalData()

QH::PKG::UniversalData::UniversalData ( )

Definition at line 14 of file universaldata.cpp.

Member Function Documentation

◆ fromStream()

QDataStream & QH::PKG::UniversalData::fromStream ( QDataStream &  stream)
finaloverrideprotectedvirtual

fromStream This method should be read all bytes from the stream object and full the current object.

Note
The implementation of this method should be invoke a method of base class.
Parameters
streamThis is Qt stream object.
Returns
Qt stream object.

Examle of base simple implementation:

QDataStream &ExampleClass::fromStream(QDataStream &stream) const {
stream >> exampleMember;
return stream;
}
virtual QDataStream & toStream(QDataStream &stream) const =0
fromStream This method should be write all members of the current object to the stream object.

Implements QH::StreamBase.

Definition at line 45 of file universaldata.cpp.

◆ ref()

QVariant * QH::PKG::UniversalData::ref ( int  key)

ref This method return pointer to the object If this object is not exists return nullptr

Parameters
keyThis is key of object
Returns
pointer to the required object.

Definition at line 36 of file universaldata.cpp.

◆ setValue()

void QH::PKG::UniversalData::setValue ( int  key,
const QVariant &  value 
)

setValue This method sets new value for the filed. Works like a insert method of the QMap

Parameters
keyThis is key of the filed.
valueThis is value of the key.

Definition at line 19 of file universaldata.cpp.

Here is the call graph for this function:

◆ toStream()

QDataStream & QH::PKG::UniversalData::toStream ( QDataStream &  stream) const
finaloverrideprotectedvirtual

fromStream This method should be write all members of the current object to the stream object.

Note
The implementation of this method should be invoke a method of base class.
Parameters
streamThis is Qt stream object.
Returns
Qt stream object.

Examle of base simple implementation:

QDataStream &ExampleClass::toStream(QDataStream &stream) const {
stream << exampleMember;
return stream;
}

Implements QH::StreamBase.

Definition at line 52 of file universaldata.cpp.

◆ value()

const QVariant & QH::PKG::UniversalData::value ( int  key,
const QVariant &  defaultVal = {} 
) const

value this method return value of the key.

Returns
value of the key.

Definition at line 23 of file universaldata.cpp.

Here is the caller graph for this function:

The documentation for this class was generated from the following files: