The Fib multimedia system
Fib is a system for storing multimedia data (like images or films).
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
fib::cEvaluePositionList Class Reference

#include <cEvaluePositionList.h>

Inheritance diagram for fib::cEvaluePositionList:
Collaboration diagram for fib::cEvaluePositionList:

List of all members.

Public Member Functions

 cEvaluePositionList ()
virtual bool evaluePosition (const cVectorPosition &vPosition, const list< cVectorProperty > &vProperties)
void clear ()
void sortPositionsData (bool bDeleteEmptyPoints=true)
- Public Member Functions inherited from fib::iEvaluePosition
virtual ~iEvaluePosition ()

Static Public Member Functions

static void sortPositionsData (list< pair< cVectorPosition, list< cVectorProperty > > > *liEvaluedPositionData, bool bDeleteEmptyPoints=true)
static bool lowerPositionPair (const pair< cVectorPosition, list< cVectorProperty > > &paPosition1, const pair< cVectorPosition, list< cVectorProperty > > &paPosition2)
static list< cVectorPropertymergeProperties (const list< cVectorProperty > &liProperties1, const list< cVectorProperty > &liProperties2)
static doubleFib distanceOfProperties (const list< cVectorProperty > &liPropertiesOriginal, const list< cVectorProperty > &liPropertiesGiven)
static cFibElementtoFibObject (const cVectorPosition &vecPosition, const list< cVectorProperty > &liProperties)
static void printPositionsData (const list< pair< cVectorPosition, list< cVectorProperty > > > &liEvaluedPositionData, ostream &strOutput)

Public Attributes

list< pair< cVectorPosition,
list< cVectorProperty > > > 
liEvaluedPositionData

Detailed Description

Definition at line 60 of file cEvaluePositionList.h.


Constructor & Destructor Documentation

fib::cEvaluePositionList::cEvaluePositionList ( )

standardconstructor


Member Function Documentation

void fib::cEvaluePositionList::clear ( )

This method clears the data from the list with the evalued position data liEvaluedPositionData. After the function call the liEvaluedPositionData list will be empty.

See also:
liEvaluedPositionData
static doubleFib fib::cEvaluePositionList::distanceOfProperties ( const list< cVectorProperty > &  liPropertiesOriginal,
const list< cVectorProperty > &  liPropertiesGiven 
)
static

This function evalues the difference betwean the two propertielists. Both propertylist have to be sorted in the order of lowerPropertyVector().

See also:
cVectorProperty::lowerPropertyVector()
cVectorProperty::distanceOfProperty()
cVectorProperty::distanceOfPropertyToNull()
Parameters:
liPropertiesOriginalthe positions with ther properties of the original fib -object
liPropertiesGiventhe positions with ther properties of the given fib -object, for which the distance to the original fib -object (liPropertiesOriginal) should be evalued
Returns:
the sum of the distance of the properties of the points (for missing properties, ther value to the nullvector will be added)
virtual bool fib::cEvaluePositionList::evaluePosition ( const cVectorPosition vPosition,
const list< cVectorProperty > &  vProperties 
)
virtual

The method with wich the evalued points with ther properties are inserted. Everytime a point (to evalue) is reached in the evaluation, this method is called with the position and the properties of the point and stores the copies of this data to the end of the list

See also:
liEvaluedPositionData .
liEvaluedPositionData
Parameters:
vPositionthe position of the point, which is evalued
vPropertiesa list of the properties of the point

Implements fib::iEvaluePosition.

Reimplemented in fib::cEvaluePositionListLimit, and fib::cEvaluePositionListMemLimit.

static bool fib::cEvaluePositionList::lowerPositionPair ( const pair< cVectorPosition, list< cVectorProperty > > &  paPosition1,
const pair< cVectorPosition, list< cVectorProperty > > &  paPosition2 
)
static

This function compares two positions with ther properties. For that just the positionsvectors are compared. A (position)vector is lower if it has less elements than the other vector or it's i'th element is lower and all j'th elements with i > j are equal.

Parameters:
paPosition1the first pair of position with it's properties to compare
paPosition2the second pair of position with it's properties to compare
Returns:
true if the positionsvector of paPosition1 is lower than that of paPosition2, else false
static list< cVectorProperty > fib::cEvaluePositionList::mergeProperties ( const list< cVectorProperty > &  liProperties1,
const list< cVectorProperty > &  liProperties2 
)
static

This function mergs the two given propertylists. All Properties of the second list liProperties2 that, aren't overwritten by properties in the first propertylist, liProperties1 are added to it.

Parameters:
liProperties1the propertielist to add to
liProperties2the list with the properties to be added
Returns:
a lis with the properties from the list liProperties1 and the properties from the list liProperties2 which arn't overwirtten by properties from list liProperties1
static void fib::cEvaluePositionList::printPositionsData ( const list< pair< cVectorPosition, list< cVectorProperty > > > &  liEvaluedPositionData,
ostream &  strOutput 
)
static

This function prints the given list of positions with ther values. It also prints the property sublists.

Parameters:
liEvaluedPositionDataa reference to the positionsdata to print
strOutputthe stream wher to print the data to
void fib::cEvaluePositionList::sortPositionsData ( bool  bDeleteEmptyPoints = true)

This function sorts the list liEvaluedPositionData of positions with ther values. It also sorts the property sublists. A vector is lower if it has less elements than the other vector or it's i'th element is lower und all j'th elements with i > j are equal. The positions with ther properties are sorted in the order as the positionsvectors. Propertyvectors with lower propertypvalues are sorted befor propertyvectors with higer propertypvalues, independent of ther elements. Also equal/duplicate positions will be removed, ther properties will be merged. Properties of a later positions in the given list will overwrite properties earlier in the list, if neccessary. Positions without porperties will be removed.

See also:
liEvaluedPositionData
Parameters:
bDeleteEmptyPointsif true points without properties will be deleted, else (if false) points without properties won't be deleted
static void fib::cEvaluePositionList::sortPositionsData ( list< pair< cVectorPosition, list< cVectorProperty > > > *  liEvaluedPositionData,
bool  bDeleteEmptyPoints = true 
)
static

This function sorts the given list of positions with ther values. It also sorts the property sublists. A vector is lower if it has less elements than the other vector or it's i'th element is lower und all j'th elements with i > j are equal. The positions with ther properties are sorted in the order as the positionsvectors. Propertyvectors with lower propertypvalues are sorted befor propertyvectors with higer propertypvalues, independent of ther elements. Also equal/duplicate positions will be removed, ther properties will be merged. Properties of a later positions in the given list will overwrite properties earlier in the list, if neccessary. Positions without porperties will be removed.

Parameters:
liEvaluedPositionDataa pointer to the positionsdata to sort
bDeleteEmptyPointsif true points without properties will be deleted, else (if false) points without properties won't be deleted
static cFibElement* fib::cEvaluePositionList::toFibObject ( const cVectorPosition vecPosition,
const list< cVectorProperty > &  liProperties 
)
static

This function creats a fib -object, which represents the given data. Beware: You have to care, that the created fib -object is deleted.

Parameters:
vecPositionthe position for the to create point
liPropertiesthe properties of the create point
Returns:
a fib -object with a point on the given position, wich is an underobject of propertyelements, with the given properties

Member Data Documentation

list< pair< cVectorPosition, list< cVectorProperty > > > fib::cEvaluePositionList::liEvaluedPositionData

The list for the evalued fib -object data.

The first pairelement is the position and the second are the properties for the position.

Definition at line 70 of file cEvaluePositionList.h.


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