A design criterion is that the memory footprint of an instance of each class must be no larger than the size of its underlying type. As a result, no virtual functions can be used, since the size of the virtual function table is quite large compared to the size of e.g. a char. (Inheritance from a base type also seems to increase the class size in GCC, at least for chars, so that too should usually be avoided.)
Compounds | |
class | BoundedString |
Simple wrapper for a C array of characters that acts like a regular string, but has a fixed maximum size (silently cropping) and a c_str() pointer that can be passed around safely. More... | |
struct | Crop |
Function object wrapper (a Boundary) for Generic::crop. More... | |
class | Float |
Bounded number with floating-point type. More... | |
class | Integer |
Bounded number with integral type. More... | |
struct | Wrap |
Function object wrapper (a Boundary) for Generic::wrap. More... | |
Typedefs | |
typedef long | LargeInt |
Encompassing integral type; numeric Bounded classes can only accept integral values up to those representable in this type. | |
typedef double | LargeFloat |
Encompassing floating-point type; numeric Bounded classes can only accept floating-point values up to those representable in this type. | |
typedef double | Magnitude |
Generic type for a real-valued magnitude on the scale 0 to 1.0. | |
Functions | |
template<size_t N, class T> std::ostream & | operator<< (std::ostream &s, const BoundedString< N, T > &b) |
Stream output for a BoundedString. |
|
Generic type for a real-valued magnitude on the scale 0 to 1.0. Larger or smaller values are acceptable (boundaries are not enforced) but are not always meaningful. Definition at line 36 of file bounded.h. Referenced by Histo::OneDBinList< Count, Value >::bin_mag(), Bounded::Float< T, MaxVal, MinVal, Boundary >::mag(), Bounded::Integer< T, MaxVal, MinVal, Boundary >::mag(), NeuralRegion::NeuralRegion(), Histo::OneDBinList< Count, Value >::relative_selectivity(), Histo::OneDBinList< Count, Value >::relative_value(), Histo::OneDBinList< Count, Value >::vector_direction(), Histo::OneDBinList< Count, Value >::vector_selectivity(), and Histo::OneDBinList< Count, Value >::weighted_average(). |