Heart 1.4.918.d927d9c
Heart is base back end library for your c++ Qt projects.
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
 NQHThe QH namespace - QuasarApp Heart namespace. This namespace contains all classes of the Heart library
  NErrorCodesErrorCodes This namesapce contains all error codes of the Heart Library
   CAbstractErrorCodesHelperHelper class with static methods for translate the ErrorCodes enums to text. This helper know only about the AbstractErrorCodes enum
  NPKGThe PKG namesapce - this namespace contains all default packages of the Heart library. If you want create a pool request for Heart Library with own implemented packages you need to create a new package into a PKG namesapce
   CAbstractDataProvide base functions for transport data by network For create you own package you need to inherited from this class. Simple Example:
   CAPIVersionThis is base pacakge class that send information about supported api version on the paired node
   CBadRequestSend response about error to client
   CBigDataBaseThis is base class of big data parts. This class contains id of movving pacakge
   CBigDataHeaderFirst empty pacakge with information of big data package
   CBigDataPartThis data class used for transporting big data files greater than 64kb
   CBigDataRequestMissing package parts for redownload. If missing parts count is 0 then pacakge donwloaded successful
   CBigDataWraperWrapper of any big data commands
   CCachedDbObjectsRequestThe CachedDbObjectsRequest class This is template class for generate request with the custom condition for BASE objects
   CCloseConnection
  • This commanad is request for close connection on parent node of connection. This is necessary because QAbstractSocket emit error when connection closed from remote node
   CCustomDBRequestThe CustomDBRequest class intended for send to database custom select request for working with multiple tables
   CDataPackDataPack this is conteiner is wraqper of the QList for transport arrays to another node
   CDBObjectThe DBObject class- main class for work with data base
   CDBObjectSetAdd features for control database object arrays. You will be able be get or remove multiple objects into database table
   CDBObjectsRequestThe DBObjectsRequest class is template class for get array of TEMPLATE Objects from database
   CDBObjectsRequestWithStreamThe DBObjectsRequestWithStream class is template class some as DBObjectsRequest but with implementation for the StreamBase::fromStream and StreamBase::toStream methods
   CDBVariantThe DBVariant struct contains QVariant value of the DBObjects member and it type
   CDeleteObjectRequest for update object with dbId;
   CErrorDataThe ErrorData struct is simple structure for contains data of the error
   CGetMaxIntegerIdIntended for get a maximum value of a sql tables column
   CGetSingleValueIntended for get a single value from database. The value is selected by primaryKey. By Default the primary key is 'id'
   CMultiversionDataThis 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
   CPing
  • test class for translate data on network
   CSerializationBox
   CSetSingleValueThis is simple class - request sets a single value into database
   CUniversalDataAll data of object in the QMap Use this package if you want to change your packages in prodaction
   CVersionIsReceivedBase class for confirmed versions
  CAbstractKeyThe Abstractkey class is provide general hash function for all keys of Heart library. This class using for generate a hash code of any keyObject
  CAbstractNode
  • Abstract implementation of node. this implementation have a methods for send and receive data messages, and work with crypto method for create a security connections betwin nodes. AbstractNode - is thread save class
  CAbstractNodeInfoInformation about client or server connection and tcp socket of node. All node Info classes must be initialized in the AbstractNode::createNodeInfo methods. This implementation of nodeInf contains only trust of node and network socket
  CAbstractNodeParserMain parser of the abstract level of the hear lib
  CAbstractTaskThe AbstractTask class. All tasks executed on separate thread
  CAccessTokenInformation duration of the access. Token are byte array for validation access users or another network member on nodes. In usually cases toke add permissions for database objects
  CAPIVersionParserThis is main parser forthe main command. This parsers work only with the APIVersion packge;
  CAsyncThis is bundle of async templates and async wrappers
  CAsyncLauncherWraper of the Async class for support moving invokes to thread of the current object
  CAsyncRenderLoopThe AsyncRenderLoop is a class for asynchronous rendering. This class is used to create a render loop that is executed in a separate thread. To use this class, you must inherit from it and implement the renderIteration method. example: :
   CMainSharedPtrThe MainSharedPtr class is a helper class for creating a shared pointer to the render loop
  CAsyncSqlDBWriterThe AsyncSqlDbWriter class is some as SqlDBWriter but run all command in own thread. This class is thread save
  CBigDataParserMain manager for control big data packages
  CDataBaseDataBase base implementation. This implementation contains methods for work with database. DataBaseNode is thread save class
  CDataSenderThis class create a queue for sendet data to network
  CDbAddressUse to work with database addresses. Database Address it is structure with 2 values
  CDbAddressKeyImplementation for calc hash key of DbAddress objects
  CDBPatchDBPatch This is function that should be upgrade database
  CDistVersionThis is information of supported versions of the destinations api
  CHeaderThe Header struct 32 bytes
  CHostAddressThe Host Address class this is wrapper of QHostAddress. Contains the NetworkAddress and network port
  CiObjectProviderBase interface for work with database objects. Using on database writers and database caches
  CiParserThis class provide functions for parsing income packages. For yousing just override the iParser::parsePackage method
  CISqlDBIt is db cache and bridge for DbWriters. Work Scheme of the database cache:
  CITokenThe IToken classes interface for the validation user packages and user dates
  CPackaDataThe PackaData struct - private data of packages
  CPackageThe Package struct. This is base structure for transporting data by network between QH nodes. The Package contains a 32 bytes header and Package::data array. The size on the header should be equals size of Package::data array
  CPackageManagerThe PakcageManager class contains all processed packages. Working like a cache of packages
  CPoolData
  CReceiveDataThe ReceiveData struct This is private structure for contains informaton for parse packages
  CRequestBase interface for working with requests commands
  CSoftDeletePovide the soft delete functionality. All child classes of this class must be deleted using the softDelete method for preparring for delete. IF you delete object without prepare then destructor invoke the abort function in debug mode. For release mode destructor print error message only
  CSqlDBThis is base implementation fo datatbase. The SqlDB do not use caches, all request run on the sqlwtiter class
  CSqlDBWriterThe SqlDBWriter class. This class write and read objects from database (hard level). Before working with database you need to initialize it. The SqlDBWriter support a any sql databases, For list of supported drivers see the Qt Docummentation https://doc.qt.io/qt-5/sql-driver.html For initialize a custom database driver you need to set an own params see the SqlDBWriter::initDb metthod. This class work only on own thread. For change working thread use the Qt method moveToThread
  CStreamBaseAdd support streaming data for all children classes. For correctly working all serializations functions you need to override fromStream and toStream methods. All implementations of overridden method should be contains a invoke of method of base class
  CTaskSchedulerThis class contains queue of all shedule tasks
  CTcpSocketThe AbstractSocket class This class is wraper of the QAbstract socket with slot implementation of the disconnect from host method
  CWorkStateSimple class with data of work state of node