Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# interpol::Interpolation Class Reference

`#include <Interpol.h>`

Inheritance diagram for interpol::Interpolation:

[legend]
List of all members.

## Public Types
typedef std::map< int, Point >::const_iterator | ConstPointIterator
## Public Member Functions
virtual int | AddPoint (const Point &p)
virtual int | AddPoint (double x, double y)
virtual bool | MovePoint (int index, const Point &p)
virtual bool | RemovePoint (int index)
virtual double | GetInterpolatedY (double x) const=0
virtual ConstPointIterator | GetPointBegin () const
virtual ConstPointIterator | GetPointEnd () const
virtual InterpolationFactory::Type | GetType () const=0
## Protected Member Functions
| Interpolation ()
virtual | ~Interpolation ()
virtual void | Assign (const Interpolation &interpolation)
virtual void | OnChange ()
## Protected Attributes
std::vector< Point > | xSortedPoints
## Private Member Functions
| Interpolation (const Interpolation &interpolation)
Interpolation & | operator= (const Interpolation &interpolation)
virtual void | BuildSortedPoints ()
## Private Attributes
int | nextIndex
std::map< int, Point > | points
## Friends
class | InterpolationFactory
Out & | operator<< (Out &stream, const Interpolation &interpolation)
In & | operator>> (In &stream, Interpolation &interpolation)

## Member Typedef Documentation

typedef std::map<int, Point>::const_iterator interpol::Interpolation::ConstPointIterator

| Definition at line 51 of file Interpol.h. Referenced by GetPointBegin(), and GetPointEnd().

## Constructor & Destructor Documentation

interpol::Interpolation::Interpolation | ( |  | ) | `[protected]`

| Definition at line 96 of file Interpol.cpp.

interpol::Interpolation::~Interpolation | ( |  | ) | `[protected, virtual]`

| Definition at line 101 of file Interpol.cpp.

interpol::Interpolation::Interpolation | ( | const Interpolation & | interpolation | ) | `[inline, private]`

| Definition at line 58 of file Interpol.h.

## Member Function Documentation

Interpolation& interpol::Interpolation::operator= | ( | const Interpolation & | interpolation | ) | `[inline, private]`

| Definition at line 59 of file Interpol.h.

int interpol::Interpolation::AddPoint | ( | const Point & | p | ) | `[virtual]`

| Definition at line 105 of file Interpol.cpp. References BuildSortedPoints(), nextIndex, OnChange(), and xSortedPoints. Referenced by AddPoint().

Here is the call graph for this function:

int interpol::Interpolation::AddPoint | ( | double | x,
|  | double | y
| ) | `[virtual]`

| Definition at line 124 of file Interpol.cpp. References AddPoint().

Here is the call graph for this function:

bool interpol::Interpolation::MovePoint | ( | int | index,
|  | const Point & | p
| ) | `[virtual]`

| Definition at line 129 of file Interpol.cpp. References BuildSortedPoints(), OnChange(), and interpol::Point::x.

Here is the call graph for this function:

bool interpol::Interpolation::RemovePoint | ( | int | index | ) | `[virtual]`

| Definition at line 157 of file Interpol.cpp. References BuildSortedPoints(), and OnChange().

Here is the call graph for this function:

virtual double interpol::Interpolation::GetInterpolatedY | ( | double | x | ) | const`[pure virtual]`

| Implemented in interpol::LinearInterpolation, and interpol::SplineInterpolation.

Interpolation::ConstPointIterator interpol::Interpolation::GetPointBegin | ( |  | ) | const`[virtual]`

| Definition at line 175 of file Interpol.cpp. References ConstPointIterator.

Interpolation::ConstPointIterator interpol::Interpolation::GetPointEnd | ( |  | ) | const`[virtual]`

| Definition at line 180 of file Interpol.cpp. References ConstPointIterator.

virtual InterpolationFactory::Type interpol::Interpolation::GetType | ( |  | ) | const`[pure virtual]`

| Implemented in interpol::LinearInterpolation, and interpol::SplineInterpolation. Referenced by interpol::InterpolationFactory::Write().

void interpol::Interpolation::Assign | ( | const Interpolation & | interpolation | ) | `[protected, virtual]`

| Definition at line 185 of file Interpol.cpp. References nextIndex, OnChange(), points, and xSortedPoints. Referenced by interpol::InterpolationFactory::Create().

Here is the call graph for this function:

virtual void interpol::Interpolation::OnChange | ( |  | ) | `[inline, protected, virtual]`

| Reimplemented in interpol::SplineInterpolation. Definition at line 77 of file Interpol.h. Referenced by AddPoint(), Assign(), MovePoint(), interpol::InterpolationFactory::Read(), and RemovePoint().

void interpol::Interpolation::BuildSortedPoints | ( |  | ) | `[private, virtual]`

| Definition at line 193 of file Interpol.cpp. References xSortedPoints. Referenced by AddPoint(), MovePoint(), interpol::InterpolationFactory::Read(), and RemovePoint().

## Friends And Related Function Documentation

friend class InterpolationFactory`[friend]`

| Reimplemented in interpol::LinearInterpolation, and interpol::SplineInterpolation. Definition at line 89 of file Interpol.h.

Out& operator<< | ( | Out & | stream,
|  | const Interpolation & | interpolation
| ) | `[friend]`

In& operator>> | ( | In & | stream,
|  | Interpolation & | interpolation
| ) | `[friend]`

## Member Data Documentation

std::vector<Point> interpol::Interpolation::xSortedPoints`[protected]`

| Definition at line 83 of file Interpol.h. Referenced by AddPoint(), Assign(), and BuildSortedPoints().

int interpol::Interpolation::nextIndex`[private]`

| Definition at line 86 of file Interpol.h. Referenced by AddPoint(), Assign(), and interpol::InterpolationFactory::Read().

std::map<int, Point> interpol::Interpolation::points`[private]`

| Definition at line 87 of file Interpol.h. Referenced by Assign(), interpol::InterpolationFactory::Read(), and interpol::InterpolationFactory::Write().

The documentation for this class was generated from the following files:

- Tools/Math/Interpol.h
- Tools/Math/Interpol.cpp