Detailed Description

view and controller classes can get information about these with the getXXX Functions.

Images and Control points are numbered, and const references are handed out. this means that all interaction will be based on image or control point numbers. The references are not stable, they might disappear when other functions of this class are called, so its best to get a new reference whenever you need the object.

This also means that the whole object is not threadsafe and concurrent access has to be synchronized from the outside.

This file is #included multiple times after defining a macro for image_variable. The idea is to reduce the amount of tedoius code copy & pasted for each image variable. The list will be used to generate things the following:

Member variables: ImageVarianle<[type]> m_[name];

Accessor functions: [type] get[name]() const;

Set functions: void set[name](const [type] data);

Link functions: void link[name](SrcPanoImg)

Unlink functions: void unlink[name]();

The arguments work as follows:

the name of the variable

the type of the variable

the default value

There is some non automatic stuff in ImageVariableTranslate.h that will need changing if this list changes. That file handles the translation to and from PTO file format style variables.