Elements 6.1.2
A C++ base framework for the Euclid Software.
Loading...
Searching...
No Matches
ClassExample.cpp
Go to the documentation of this file.
1
23
24#include <cmath> // for std::abs
25#include <cstdint> // for std::int64_t
26#include <memory> // for unique_ptr
27#include <string> // for string
28#include <vector> // for vector
29
32
33using std::vector;
34
35namespace Elements {
36namespace Examples {
37
38const std::string ClassExample::s_static_string = "This is a static field example";
39
40double ClassExample::fundamentalTypeMethod(const double input_variable) const {
41 return input_variable;
42}
43
44/*
45 * This is a silly example just to have a method throwing an exception
46 */
47double ClassExample::divideNumbers(const double first, const double second) const {
48 double tolerance = 1e-12;
49 if (std::abs(second) < tolerance) {
50 throw Elements::Exception() << "Dividing by " << second << " exception in ClassExample::divideNumbers(...)";
51 }
52 return first / second;
53}
54
56 ELEMENTS_UNUSED auto vect_size = vector_unique_ptr->size();
57}
58
60 ELEMENTS_UNUSED auto object_size = input_object.size();
61}
62
63ClassExample ClassExample::factoryMethod(const std::int64_t source_id, const double ra) {
64 return ClassExample{source_id, ra};
65}
66
67} // namespace Examples
68} // namespace Elements
defines the base Elements exception class
Macro to silence unused variables warnings from the compiler.
double divideNumbers(const double first, const double second) const
Divide two double variables.
void passingUniquePointer(std::unique_ptr< std::vector< double > > vector_unique_ptr) const
Example method with a unique pointer argument.
static const std::string s_static_string
An example of a static string.
Definition: ClassExample.h:194
static ClassExample factoryMethod(const std::int64_t source_id, const double ra)
Example factory method.
void passingObjectInGeneral(const std::vector< double > &input_object) const
Example method taking an object in input.
double fundamentalTypeMethod(const double input_variable) const
Simple method example.
Elements base exception class.
Definition: Exception.h:47
#define ELEMENTS_UNUSED
Definition: Unused.h:39
T size(T... args)