srecord  1.65.0
minimum.h
Go to the documentation of this file.
1 //
2 // srecord - Manipulate EPROM load files
3 // Copyright (C) 2008-2011 Peter Miller
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU Lesser General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public License
16 // along with this program. If not, see
17 // <http://www.gnu.org/licenses/>.
18 //
19 
20 #ifndef SRECORD_INPUT_FILTER_INTERVAL_MINIMUM_H
21 #define SRECORD_INPUT_FILTER_INTERVAL_MINIMUM_H
22 
24 
25 namespace srecord
26 {
27 
28 /**
29  * The srecord::input_filter_interval_minimum class is used to represent a
30  * filter which injects the minimum address of the data into the data.
31  */
34 {
35 public:
36  /**
37  * The destructor.
38  */
40 
41 private:
42  /**
43  * The constructor.
44  *
45  * @param deeper
46  * The input source to be filtered.
47  * @param address
48  * The address at which to place the minimum address.
49  * @param length
50  * The number of bytes of minimum address to be inserted.
51  * @param end
52  * The byte order.
53  * @param inclusive
54  * true if the output location is included in the address
55  * range, false if not
56  */
57  input_filter_interval_minimum(const pointer &deeper, long address,
58  int length, endian_t end, bool inclusive);
59 
60 public:
61  /**
62  * The constructor.
63  *
64  * @param deeper
65  * The input source to be filtered.
66  * @param address
67  * The address at which to place the minimum address.
68  * @param length
69  * The number of bytes of minimum address to be inserted.
70  * @param end
71  * The byte order.
72  * @param inclusive
73  * true if the output location is included in the address
74  * range, false if not
75  */
76  static pointer create(const pointer &deeper, long address, int length,
77  endian_t end, bool inclusive);
78 
79 protected:
80  // See base class for documentation.
81  long calculate_result() const;
82 
83 private:
84  /**
85  * The default constructor. Do not use.
86  */
88 
89  /**
90  * The copy constructor. Do not use.
91  */
93 
94  /**
95  * The assignment operator. Do not use.
96  */
99 };
100 
101 };
102 
103 // vim: set ts=8 sw=4 et :
104 #endif // SRECORD_INPUT_FILTER_INTERVAL_MINIMUM_H
The srecord::input_filter_interval_minimum class is used to represent a filter which injects the mini...
Definition: minimum.h:34
long calculate_result() const
The calculate_result method is used to calculate the final value to be placed into the output.
static pointer create(const pointer &deeper, long address, int length, endian_t end, bool inclusive)
The constructor.
virtual ~input_filter_interval_minimum()
The destructor.
The srecord::input_filter_interval class is used to represent a filter which works with the interval ...
Definition: interval.h:35
std::shared_ptr< input > pointer
Definition: input.h:41
endian_t
Definition: endian.h:27