BPS C++ API  2.24.4
bpsglobals.h File Reference

Public include file for BPS solution wide globals. More...

Go to the source code of this file.

Macros

#define bChar(aChar)   QChar(aChar)
 Encapsulation for char literals. More...
 
#define BPS_APPLICATION_NAME   "BPS2"
 Software name.
 
#define BPS_COPYRIGHT_TEXT   "Copyright(C) 2010-2024 IBK Software AG"
 Copyright text.
 
#define BPS_COPYRIGHT_YEARS   "2010-2024"
 Copyright years.
 
#define BPS_DATASTORE_LEVEL_MAX   2024007
 Maximum datastore level compatible to this software version.
 
#define BPS_DATASTORE_LEVEL_MIN   2024007
 Minimum datastore level compatible to this software version.
 
#define BPS_DESCRIPTION   "Business Process System"
 Long software name.
 
#define BPS_ORGANIZATION_DOMAIN   "ibk-software.com"
 Software creator domain.
 
#define BPS_ORGANIZATION_NAME   "IBK Software AG"
 Software creator name.
 
#define BPS_PRIVATE(Class)
 Declare pointer to private object in a public class. More...
 
#define BPS_PUBLIC(Class)
 Declare pointer to public object in a private class. More...
 
#define BPS_RELDATE   "08.07.2024"
 Software release date.
 
#define BPS_STRING(tok)   BPS_STRING0(tok)
 Stringize token, expanding macros first in case.
 
#define BPS_STRING0(tok)   #tok
 Stringize token.
 
#define BPS_VERSION   BPS_STRING(BPS_VERSION_MAJOR.BPS_VERSION_MINOR.BPS_VERSION_MICRO)
 Software version as text.
 
#define BPS_VERSION_FIX   3
 Software fix version number.
 
#define BPS_VERSION_MAJOR   2
 Software major version number.
 
#define BPS_VERSION_MICRO   7
 Software micro version number.
 
#define BPS_VERSION_MINOR   24
 Software minor version number.
 
#define bStr(aStr)   QString(aStr)
 Encapsulation for string literals. More...
 

Detailed Description

Public include file for BPS solution wide globals.

Some special macros are included to make linking to the shared library binary stable. This is achieved by moving all member data into a private class and only keeping a pointer to the private object in the public class, against which the applications are linked. This way the size of the public objects will always stay the same between different releases, even if member data size internally changes.

Macro Definition Documentation

◆ bChar

#define bChar (   aChar)    QChar(aChar)

Encapsulation for char literals.

Source code is assumed to be UTF-8 encoded.

◆ BPS_PRIVATE

#define BPS_PRIVATE (   Class)
Value:
private: \
class Class##Private* prv_; \
friend class Class##Private;

Declare pointer to private object in a public class.

◆ BPS_PUBLIC

#define BPS_PUBLIC (   Class)
Value:
private: \
class Class* pub_; \
friend class Class;

Declare pointer to public object in a private class.

◆ bStr

#define bStr (   aStr)    QString(aStr)

Encapsulation for string literals.

Source code is assumed to be UTF-8 encoded.