summaryrefslogtreecommitdiff
path: root/src/lbm_unit.h
blob: 20c6e70ec77926817e5cde2c5fd362ac52a90e6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#pragma once

#include <kel/unit/unit.h>

#include <string_view>

namespace kel {
namespace lbm_type {
struct meter {
	static constexpr std::string_view name = "meter_l";
	static constexpr std::string_view short_name = "m_l";
};

struct second {
	static constexpr std::string_view name = "second_l";
	static constexpr std::string_view short_name = "s_l";
};
}

template<typename S>
using lbm_meter = unit<S, unit_component<lbm_type::meter, 1>>;

template<typename S>
using lbm_second = unit<S, unit_component<lbm_type::second, 1>>;

template<typename S>
using lbm_velocity = unit<S, unit_component<lbm_type::meter, 1>, unit_component<lbm_type::second, -1>>;

template<typename S>
using lbm_acceleration = unit<S, unit_component<lbm_type::meter, 1>, unit_component<lbm_type::second, -2>>;
}