55 lines
1.0 KiB
C++

/*!
* \file config.h
* \brief Build configuration file.
*
* \author
* Christos Choutouridis AEM:8997
* <cchoutou@ece.auth.gr>
*/
#ifndef CONFIG_H_
#define CONFIG_H_
#include <cstdint>
/*
* Defines for different version of the exercise
*/
#define BITONIC (1)
#define BUBBLETONIC (2)
// Fail-safe version selection
#if !defined CODE_VERSION
#define CODE_VERSION BITONIC
#endif
/*!
* Value type selection
*
* We support the following compiler types or the <cstdint> that translate to them:
* char - unsigned char
* short - unsigned short
* int - unsigned int
* long - unsigned long
* long long - unsigned long long
* float
* double
*/
using distValue_t = uint32_t;
/*!
* Session option for each invocation of the executable
*/
struct session_t {
size_t arraySize{0};
bool ndebug{false};
bool timing{false};
bool verbose{false}; //!< Flag to enable verbose output to stdout
};
extern session_t session;
#endif /* CONFIG_H_ */