diff --git a/CMakeLists.txt b/CMakeLists.txt index a879e31f..fc595582 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,6 +36,7 @@ xo_toplevel_compile_options() # ---------------------------------------------------------------- #add_subdirectory(src/unit) +add_subdirectory(example) add_subdirectory(utest) add_subdirectory(docs) diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt new file mode 100644 index 00000000..ed03faf2 --- /dev/null +++ b/example/CMakeLists.txt @@ -0,0 +1,3 @@ +add_subdirectory(ex1) +add_subdirectory(ex2) +add_subdirectory(ex3) diff --git a/example/ex1/CMakeLists.txt b/example/ex1/CMakeLists.txt new file mode 100644 index 00000000..0d415a06 --- /dev/null +++ b/example/ex1/CMakeLists.txt @@ -0,0 +1,14 @@ +# xo-unit/example/ex1/CMakeLists.txt + +set(SELF_EXE xo_unit_ex1) +set(SELF_SRCS ex1.cpp) + +add_executable(${SELF_EXE} ${SELF_SRCS}) +xo_include_options2(${SELF_EXE}) + +# ---------------------------------------------------------------- +# dependencies.. + +xo_self_dependency(${SELF_EXE} xo_unit) + +# end CMakeLists.txt diff --git a/example/ex1/ex1.cpp b/example/ex1/ex1.cpp new file mode 100644 index 00000000..74d0dc10 --- /dev/null +++ b/example/ex1/ex1.cpp @@ -0,0 +1,18 @@ +/** @file ex1.cpp **/ + +#include "xo/unit/quantity.hpp" +#include + +int +main () { + namespace qty = xo::obs::qty; + using namespace std; + + auto t = qty::milliseconds(10); + auto m = qty::kilograms(2.5); + auto a = m / (t*t); + + cerr << "t: " << t << ", m: " << m << ", m.t^-2: " << a << endl; +} + +/** end ex1.cpp **/ diff --git a/example/ex2/CMakeLists.txt b/example/ex2/CMakeLists.txt new file mode 100644 index 00000000..fa98d33b --- /dev/null +++ b/example/ex2/CMakeLists.txt @@ -0,0 +1,14 @@ +# xo-unit/example/ex2/CMakeLists.txt + +set(SELF_EXE xo_unit_ex2) +set(SELF_SRCS ex2.cpp) + +add_executable(${SELF_EXE} ${SELF_SRCS}) +xo_include_options2(${SELF_EXE}) + +# ---------------------------------------------------------------- +# dependencies.. + +xo_self_dependency(${SELF_EXE} xo_unit) + +# end CMakeLists.txt diff --git a/example/ex2/ex2.cpp b/example/ex2/ex2.cpp new file mode 100644 index 00000000..96e574ed --- /dev/null +++ b/example/ex2/ex2.cpp @@ -0,0 +1,20 @@ +/** @file ex2.cpp **/ + +#include "xo/unit/quantity.hpp" +#include + +int +main () { + namespace u = xo::obs::units; + namespace qty = xo::obs::qty; + using xo::obs::quantity; + using namespace std; + + quantity t = qty::milliseconds(10); + quantity m = qty::kilograms(2.5); + auto a = m / (t*t); + + cerr << "t: " << t << ", m: " << m << ", m.t^-2: " << a << endl; +} + +/** end ex2.cpp **/ diff --git a/example/ex3/CMakeLists.txt b/example/ex3/CMakeLists.txt new file mode 100644 index 00000000..e6f40fc1 --- /dev/null +++ b/example/ex3/CMakeLists.txt @@ -0,0 +1,14 @@ +# xo-unit/example/ex3/CMakeLists.txt + +set(SELF_EXE xo_unit_ex3) +set(SELF_SRCS ex3.cpp) + +add_executable(${SELF_EXE} ${SELF_SRCS}) +xo_include_options2(${SELF_EXE}) + +# ---------------------------------------------------------------- +# dependencies.. + +xo_self_dependency(${SELF_EXE} xo_unit) + +# end CMakeLists.txt diff --git a/example/ex3/ex3.cpp b/example/ex3/ex3.cpp new file mode 100644 index 00000000..d7939957 --- /dev/null +++ b/example/ex3/ex3.cpp @@ -0,0 +1,19 @@ +/** @file ex3.cpp **/ + +#include "xo/unit/quantity.hpp" +#include + +int +main () { + namespace u = xo::obs::units; + namespace qty = xo::obs::qty; + using xo::obs::quantity; + using namespace std; + + auto t1 = qty::milliseconds(1); + auto t2 = qty::minutes(1); + + cerr << "t1: " << t1 << ", t2: " << t2 << ", t1*t2: " << t1*t2 << endl; +} + +/** end ex3.cpp **/