float_t.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 
8 #include <audio/types.hpp>
9 
10 namespace audio {
11  class float_t {
12  private:
13  float m_data;
14  public:
15  float_t() {}
16  float_t(float _value) :
17  m_data(_value) {
18  // nothing to do
19  }
20  // transformation operator:
21  float_t(const audio::int8_8_t& _val);
22  float_t(const audio::int8_16_t& _val);
23  float_t(const audio::int16_16_t& _val);
24  float_t(const audio::int16_32_t& _val);
25  float_t(const audio::int24_24_t& _val);
26  float_t(const audio::int24_32_t& _val);
27  float_t(const audio::int32_32_t& _val);
28  float_t(const audio::int32_64_t& _val);
29  float_t(const audio::int64_64_t& _val);
30  float_t(const audio::float_t& _val);
31  float_t(const audio::double_t& _val);
32  // set operator
33  float_t(int64_t _value, int32_t _flotingPointPosition);
34  void set(int64_t _value, int32_t _flotingPointPosition);
35  void set(float _value);
36  float get() const;
37  float getFloat() const;
38  double getDouble() const;
39  /* ****************************************************
40  * = assigment
41  *****************************************************/
42  const float_t& operator= (const float_t& _obj);
43  /* ****************************************************
44  * == operator
45  *****************************************************/
46  bool operator== (const float_t& _obj) const;
47  /* ****************************************************
48  * != operator
49  *****************************************************/
50  bool operator!= (const float_t& _obj) const;
51  /* ****************************************************
52  * < operator
53  *****************************************************/
54  bool operator< (const audio::float_t& _obj) const;
55  /* ****************************************************
56  * < operator
57  *****************************************************/
58  bool operator<= (const audio::float_t& _obj) const;
59  /* ****************************************************
60  * < operator
61  *****************************************************/
62  bool operator> (const audio::float_t& _obj) const;
63  /* ****************************************************
64  * < operator
65  *****************************************************/
66  bool operator>= (const audio::float_t& _obj) const;
67  /* ****************************************************
68  * += operator
69  *****************************************************/
70  const float_t& operator+= (const float_t& _obj);
71  /* ****************************************************
72  * + operator
73  *****************************************************/
74  float_t operator+ (const float_t& _obj) const;
75  /* ****************************************************
76  * -= operator
77  *****************************************************/
78  const float_t& operator-= (const float_t& _obj);
79  /* ****************************************************
80  * - operator
81  *****************************************************/
82  float_t operator- (const float_t& _obj) const;
83  /* ****************************************************
84  * *= operator
85  *****************************************************/
86  const float_t& operator*= (const float_t& _obj);
87  /* ****************************************************
88  * * operator
89  *****************************************************/
90  float_t operator* (const float_t& _obj) const;
91  /* ****************************************************
92  * /= operator
93  *****************************************************/
94  const float_t& operator/= (const float_t& _obj);
95  /* ****************************************************
96  * / operator
97  *****************************************************/
98  float_t operator/ (const float_t& _obj) const;
99  /* ****************************************************
100  * ++ operator
101  *****************************************************/
102  float_t& operator++();
103  float_t operator++(int _unused);
104  /* ****************************************************
105  * -- operator
106  *****************************************************/
107  float_t& operator--();
108  float_t operator--(int _unused);
109  };
110  std::ostream& operator <<(std::ostream& _os, const audio::float_t& _obj);
111 }
112 
Definition: int32_32_t.hpp:15
Definition: int8_16_t.hpp:17
Definition: int64_64_t.hpp:10
Definition: int24_24_t.hpp:17
Definition: int24_32_t.hpp:17
Definition: int16_32_t.hpp:17
Definition: int16_16_t.hpp:17
Definition: float_t.hpp:11
Audio library namespace.
Definition: channel.hpp:70
Definition: int32_64_t.hpp:10
Definition: int8_8_t.hpp:15
Definition: double_t.hpp:10