38 |
* E-mail : |
* E-mail : |
39 |
* |
* |
40 |
*******************************************************************/ |
*******************************************************************/ |
|
|
|
41 |
/** |
/** |
42 |
** \file constlogsignal.hh |
** \file contlogsignal.hh |
43 |
** Define a continuous signal on logarithmique scale |
** Define the continue logarithm signal abstract class |
44 |
*/ |
*/ |
45 |
|
|
46 |
#ifndef CONTLOGSIGNAL_HH |
#ifndef CONTLOGSIGNAL_HH |
48 |
|
|
49 |
#include "type.hh" |
#include "type.hh" |
50 |
|
|
51 |
/** \brief Discret signal signal |
/** \brief Continue logarithm signal |
52 |
** |
** |
53 |
*/ |
*/ |
54 |
|
|
|
|
|
55 |
class ContLogSignal: public Type { |
class ContLogSignal: public Type { |
56 |
// Associations |
// Associations |
57 |
// Attributes |
// Attributes |
58 |
// Operations |
// Operations |
59 |
public: |
public: |
60 |
/** \name Ctor & dtor. |
/** \name Ctor & dtor. |
61 |
** \{ */ |
** \{ */ |
62 |
|
|
63 |
/** \brief Construct a new type of continuous signal |
/** \brief Construct a new type of continuous logartihm signal |
|
** \param data: data witch represents signal in double |
|
|
** \param length: length of data, it's the number of double, be carefull, it should be allocated |
|
64 |
*/ |
*/ |
65 |
|
ContLogSignal(double *data) : Type(data) |
66 |
|
{ |
67 |
|
}; |
68 |
ContLogSignal(double *data, int length) : Type(data, length) |
ContLogSignal(double *data, int length) : Type(data, length) |
69 |
{ |
{ |
70 |
}; |
}; |
72 |
|
|
73 |
/** \name Operations |
/** \name Operations |
74 |
** \{ */ |
** \{ */ |
|
|
|
|
/** \brief Add two continuous signals point to point |
|
|
** \param src: signal to add to this |
|
|
*/ |
|
75 |
ContLogSignal &add ( ContLogSignal &src ); |
ContLogSignal &add ( ContLogSignal &src ); |
76 |
|
/** \brief Overload operator, add his two paramters |
|
/** \brief Overload operator add |
|
77 |
** \param src: signal to add to this |
** \param src: signal to add to this |
78 |
*/ |
*/ |
79 |
ContLogSignal &operator+(ContLogSignal &src) |
ContLogSignal &operator+(ContLogSignal &src) |
80 |
{return this->add(src);}; |
{return this->add(src);}; |
81 |
|
|
|
/** \brief Substract two continuous signals |
|
|
** \param src: signal to substract to this |
|
|
*/ |
|
82 |
ContLogSignal &sub ( ContLogSignal &src ); |
ContLogSignal &sub ( ContLogSignal &src ); |
83 |
|
/** \brief Overload operator -, substract his two paramters |
84 |
/** \brief Overload operator, substract |
** \param src: signal to substract to this |
|
** \param src: signal to add to this |
|
85 |
*/ |
*/ |
86 |
ContLogSignal &operator-(ContLogSignal &src) |
ContLogSignal &operator-(ContLogSignal &src) |
87 |
{return this->sub(src);}; |
{return this->sub(src);}; |
88 |
|
|
|
/** \brief Multiplication operator, not implemented yet |
|
|
*/ |
|
89 |
ContLogSignal &mult ( ContLogSignal &src ); |
ContLogSignal &mult ( ContLogSignal &src ); |
90 |
/** \brief Return the minimun value of the signal, Not implemented |
|
91 |
*/ |
/** \brief Overload operator * |
92 |
int ContLogSignal::min ( ContLogSignal &src ); |
*/ |
93 |
/** \brief Return the maximum value of the signal, Not implemented |
ContLogSignal &operator*(ContLogSignal &src) |
94 |
*/ |
{return this->mult(src);} |
95 |
int ContLogSignal::max ( ContLogSignal &src ); |
|
96 |
|
/** \brief concat src1 and src2 signal in the result |
97 |
|
** \param src1: data to put in first |
98 |
|
** \param src2: data to put in second place |
99 |
|
*/ |
100 |
|
ContLogSignal &ContLogSignal::concat ( ContLogSignal &src2 ); |
101 |
|
|
102 |
|
/** \brief Hamming Operation |
103 |
|
** \param src: data to put in first |
104 |
|
*/ |
105 |
|
ContLogSignal &ContLogSignal::hamming ( ); |
106 |
|
|
107 |
|
/** \brief Truncate a source signal |
108 |
|
** \param begin: the beginning of truncate |
109 |
|
** \param end: the end of truncate |
110 |
|
*/ |
111 |
|
ContLogSignal &ContLogSignal::truncate ( const int begin, const int end ); |
112 |
|
/** \brief min return position of the min value in the signal |
113 |
|
*/ |
114 |
|
int ContLogSignal::min ( ); |
115 |
|
/** \brief max return position of the max value in the signal |
116 |
|
*/ |
117 |
|
int ContLogSignal::max ( ); |
118 |
}; |
}; |
119 |
|
|
120 |
#endif |
#endif |