|
@@ -14,10 +14,10 @@ namespace Framework
|
|
|
{
|
|
|
TYP var;
|
|
|
bool set = false;
|
|
|
- ArrayEintrag< TYP > *next = 0;
|
|
|
+ ArrayEintrag< TYP >* next = 0;
|
|
|
|
|
|
//! Setzt den Eintrag auf die Werte des anderen Eintrages
|
|
|
- ArrayEintrag &operator=( ArrayEintrag &r )
|
|
|
+ ArrayEintrag& operator=( ArrayEintrag& r )
|
|
|
{
|
|
|
var = r.var;
|
|
|
set = r.set;
|
|
@@ -33,12 +33,12 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
return var;
|
|
|
}
|
|
|
//! inkrementiert durch die Linked List durch
|
|
|
- ArrayEintrag< TYP > &operator++() //! prefix
|
|
|
+ ArrayEintrag< TYP >& operator++() //! prefix
|
|
|
{
|
|
|
if( !next )
|
|
|
{
|
|
@@ -52,7 +52,7 @@ namespace Framework
|
|
|
return *next;
|
|
|
}
|
|
|
//! inkrementiert durch die Linked List durch
|
|
|
- ArrayEintrag< TYP > &operator++( int ) //! postfix
|
|
|
+ ArrayEintrag< TYP >& operator++( int ) //! postfix
|
|
|
{
|
|
|
if( !next )
|
|
|
{
|
|
@@ -77,10 +77,10 @@ namespace Framework
|
|
|
class Iterator
|
|
|
{
|
|
|
private:
|
|
|
- ArrayEintrag< TYP > *current;
|
|
|
+ ArrayEintrag< TYP >* current;
|
|
|
|
|
|
public:
|
|
|
- Iterator( ArrayEintrag< TYP > *start )
|
|
|
+ Iterator( ArrayEintrag< TYP >* start )
|
|
|
{
|
|
|
current = start;
|
|
|
while( current && !current->set )
|
|
@@ -89,12 +89,12 @@ namespace Framework
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- Iterator( const Iterator &it )
|
|
|
+ Iterator( const Iterator& it )
|
|
|
{
|
|
|
current = it.current;
|
|
|
}
|
|
|
|
|
|
- Iterator< TYP > &operator=( Iterator< TYP > r )
|
|
|
+ Iterator< TYP >& operator=( Iterator< TYP > r )
|
|
|
{
|
|
|
current = r.current;
|
|
|
return *this;
|
|
@@ -102,7 +102,7 @@ namespace Framework
|
|
|
|
|
|
bool hasNext()
|
|
|
{
|
|
|
- ArrayEintrag< TYP > *next = current->next;
|
|
|
+ ArrayEintrag< TYP >* next = current->next;
|
|
|
while( next && !next->set )
|
|
|
{
|
|
|
next = next->next;
|
|
@@ -123,7 +123,7 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
return Iterator( current->next );
|
|
|
}
|
|
@@ -141,12 +141,12 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
return current->var;
|
|
|
}
|
|
|
|
|
|
- Iterator< TYP > &operator++() //! prefix
|
|
|
+ Iterator< TYP >& operator++() //! prefix
|
|
|
{
|
|
|
do
|
|
|
{
|
|
@@ -175,7 +175,7 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
return current->var;
|
|
|
}
|
|
@@ -188,7 +188,7 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
return current->var;
|
|
|
}
|
|
@@ -206,11 +206,11 @@ namespace Framework
|
|
|
err += __FILE__;
|
|
|
err += " Line: ";
|
|
|
err += __LINE__;
|
|
|
- throw std::out_of_range( (char *)err );
|
|
|
+ throw std::out_of_range( (char*)err );
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- bool operator!=( Iterator< TYP > &r )
|
|
|
+ bool operator!=( Iterator< TYP >& r )
|
|
|
{
|
|
|
return current != r.current;
|
|
|
}
|
|
@@ -222,8 +222,8 @@ namespace Framework
|
|
|
class Array : public virtual ReferenceCounter
|
|
|
{
|
|
|
private:
|
|
|
- ArrayEintrag< TYP > *entries;
|
|
|
- ArrayEintrag< TYP > *last;
|
|
|
+ ArrayEintrag< TYP >* entries;
|
|
|
+ ArrayEintrag< TYP >* last;
|
|
|
int count;
|
|
|
|
|
|
public:
|
|
@@ -240,7 +240,7 @@ namespace Framework
|
|
|
|
|
|
//! Kopiert eine Linked list
|
|
|
//!
|
|
|
- Array( const Array &arr )
|
|
|
+ Array( const Array& arr )
|
|
|
: Array()
|
|
|
{
|
|
|
int anz = arr.getEintragAnzahl();
|
|
@@ -285,10 +285,10 @@ namespace Framework
|
|
|
return;
|
|
|
}
|
|
|
count++;
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
- ArrayEintrag< TYP > *ne = new ArrayEintrag< TYP >();
|
|
|
+ ArrayEintrag< TYP >* ne = new ArrayEintrag< TYP >();
|
|
|
ne->var = e->var;
|
|
|
ne->set = e->set;
|
|
|
ne->next = e->next;
|
|
@@ -304,7 +304,7 @@ namespace Framework
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
e->var = t;
|
|
@@ -320,15 +320,15 @@ namespace Framework
|
|
|
return;
|
|
|
if( i < 0 || p < 0 || i >= count || p >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
- ArrayEintrag< TYP > *ve = 0;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
+ ArrayEintrag< TYP >* ve = 0;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
{
|
|
|
ve = e;
|
|
|
e = e->next;
|
|
|
}
|
|
|
- ArrayEintrag< TYP > *e2 = entries == e ? e->next : entries;
|
|
|
- ArrayEintrag< TYP > *ve2 = 0;
|
|
|
+ ArrayEintrag< TYP >* e2 = entries == e ? e->next : entries;
|
|
|
+ ArrayEintrag< TYP >* ve2 = 0;
|
|
|
for( int a = 0; a < p; ++a )
|
|
|
{
|
|
|
ve2 = e2;
|
|
@@ -358,7 +358,7 @@ namespace Framework
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
if( e->next )
|
|
@@ -368,7 +368,7 @@ namespace Framework
|
|
|
}
|
|
|
else
|
|
|
e->set = 0;
|
|
|
- ArrayEintrag< TYP > *del = e->next;
|
|
|
+ ArrayEintrag< TYP >* del = e->next;
|
|
|
if( e->next )
|
|
|
e->next = e->next->next;
|
|
|
else
|
|
@@ -388,7 +388,7 @@ namespace Framework
|
|
|
//! \param i Der Index des Elementes das gelöscht werden soll
|
|
|
void removeValue( TYP value )
|
|
|
{
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
while( e->var != value )
|
|
|
{
|
|
|
if( !e->next )
|
|
@@ -404,7 +404,7 @@ namespace Framework
|
|
|
}
|
|
|
else
|
|
|
e->set = 0;
|
|
|
- ArrayEintrag< TYP > *del = e->next;
|
|
|
+ ArrayEintrag< TYP >* del = e->next;
|
|
|
if( e->next )
|
|
|
e->next = e->next->next;
|
|
|
else
|
|
@@ -433,8 +433,8 @@ namespace Framework
|
|
|
//! Löscht alle Elemente der Liste
|
|
|
void leeren()
|
|
|
{
|
|
|
- ArrayEintrag< TYP > *e2 = 0;
|
|
|
- for( ArrayEintrag< TYP > *e = entries; e; e = e->next )
|
|
|
+ ArrayEintrag< TYP >* e2 = 0;
|
|
|
+ for( ArrayEintrag< TYP >* e = entries; e; e = e->next )
|
|
|
{
|
|
|
delete e2;
|
|
|
e2 = e;
|
|
@@ -473,7 +473,7 @@ namespace Framework
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP > *e = entries;
|
|
|
+ ArrayEintrag< TYP >* e = entries;
|
|
|
for( int a = 0; a < i && e; ++a )
|
|
|
e = e->next;
|
|
|
return e->var;
|
|
@@ -492,7 +492,7 @@ namespace Framework
|
|
|
int getWertIndex( TYP t ) const
|
|
|
{
|
|
|
int ret = 0;
|
|
|
- for( ArrayEintrag< TYP > *e = entries; e; e = e->next )
|
|
|
+ for( ArrayEintrag< TYP >* e = entries; e; e = e->next )
|
|
|
{
|
|
|
if( e->set && e->var == t )
|
|
|
return ret;
|
|
@@ -501,7 +501,7 @@ namespace Framework
|
|
|
return -1;
|
|
|
}
|
|
|
|
|
|
- Array &operator=( const Array &arr )
|
|
|
+ Array& operator=( const Array& arr )
|
|
|
{
|
|
|
leeren();
|
|
|
int anz = arr.getEintragAnzahl();
|
|
@@ -516,8 +516,8 @@ namespace Framework
|
|
|
class RCArray : public virtual ReferenceCounter
|
|
|
{
|
|
|
private:
|
|
|
- ArrayEintrag< TYP * > *entries;
|
|
|
- ArrayEintrag< TYP * > *last;
|
|
|
+ ArrayEintrag< TYP* >* entries;
|
|
|
+ ArrayEintrag< TYP* >* last;
|
|
|
int count;
|
|
|
|
|
|
public:
|
|
@@ -525,7 +525,7 @@ namespace Framework
|
|
|
RCArray() noexcept
|
|
|
: ReferenceCounter()
|
|
|
{
|
|
|
- entries = new ArrayEintrag< TYP * >();
|
|
|
+ entries = new ArrayEintrag< TYP* >();
|
|
|
entries->set = 0;
|
|
|
entries->next = 0;
|
|
|
last = entries;
|
|
@@ -533,7 +533,7 @@ namespace Framework
|
|
|
}
|
|
|
|
|
|
//! Kopiert eine Linked list
|
|
|
- RCArray( const RCArray &arr )
|
|
|
+ RCArray( const RCArray& arr )
|
|
|
: RCArray()
|
|
|
{
|
|
|
int anz = arr.getEintragAnzahl();
|
|
@@ -551,7 +551,7 @@ namespace Framework
|
|
|
|
|
|
//! Hängt ein Element ans Ende der Liste an
|
|
|
//! \param t Das neue Element
|
|
|
- void add( TYP *t )
|
|
|
+ void add( TYP* t )
|
|
|
{
|
|
|
count++;
|
|
|
if( !last->set )
|
|
@@ -560,7 +560,7 @@ namespace Framework
|
|
|
last->set = 1;
|
|
|
return;
|
|
|
}
|
|
|
- last->next = new ArrayEintrag< TYP * >();
|
|
|
+ last->next = new ArrayEintrag< TYP* >();
|
|
|
last = last->next;
|
|
|
last->var = t;
|
|
|
last->set = 1;
|
|
@@ -569,7 +569,7 @@ namespace Framework
|
|
|
//! Fügt ein Element bei einer bestimmten Position in die Liste ein
|
|
|
//! \param t das neue Element
|
|
|
//! \param i Die Position, wo das Element eingefügt wird (danach der Index des neuen Elementes)
|
|
|
- void add( TYP *t, int i )
|
|
|
+ void add( TYP* t, int i )
|
|
|
{
|
|
|
if( i < 0 || i > count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
@@ -578,10 +578,10 @@ namespace Framework
|
|
|
add( t );
|
|
|
return;
|
|
|
}
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
- ArrayEintrag< TYP * > *ne = new ArrayEintrag< TYP * >();
|
|
|
+ ArrayEintrag< TYP* >* ne = new ArrayEintrag< TYP* >();
|
|
|
ne->var = e->var;
|
|
|
ne->set = e->set;
|
|
|
ne->next = e->next;
|
|
@@ -596,11 +596,11 @@ namespace Framework
|
|
|
//! Setzt den Wert des i-ten Eintrags
|
|
|
//! \param t der Neue Wert
|
|
|
//! \param i Der Index des Eintrages der gesetzt werden soll
|
|
|
- void set( TYP *t, int i )
|
|
|
+ void set( TYP* t, int i )
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
if( e->set && e->var )
|
|
@@ -618,15 +618,15 @@ namespace Framework
|
|
|
return;
|
|
|
if( i < 0 || p < 0 || i >= count || p >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP * > *ve = 0;
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* ve = 0;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
{
|
|
|
ve = e;
|
|
|
e = e->next;
|
|
|
}
|
|
|
- ArrayEintrag< TYP * > *e2 = entries == e ? e->next : entries;
|
|
|
- ArrayEintrag< TYP * > *ve2 = 0;
|
|
|
+ ArrayEintrag< TYP* >* e2 = entries == e ? e->next : entries;
|
|
|
+ ArrayEintrag< TYP* >* ve2 = 0;
|
|
|
for( int a = 0; a < p; ++a )
|
|
|
{
|
|
|
ve2 = e2;
|
|
@@ -656,7 +656,7 @@ namespace Framework
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i; ++a )
|
|
|
e = e->next;
|
|
|
if( e->next )
|
|
@@ -672,7 +672,7 @@ namespace Framework
|
|
|
e->var->release();
|
|
|
e->set = 0;
|
|
|
}
|
|
|
- ArrayEintrag< TYP * > *del = e->next;
|
|
|
+ ArrayEintrag< TYP* >* del = e->next;
|
|
|
if( e->next )
|
|
|
e->next = e->next->next;
|
|
|
else
|
|
@@ -695,7 +695,7 @@ namespace Framework
|
|
|
{
|
|
|
if( vi < 0 || ni < 0 )
|
|
|
return;
|
|
|
- TYP *tmp = get( ni );
|
|
|
+ TYP* tmp = get( ni );
|
|
|
set( get( vi ), ni );
|
|
|
set( tmp, vi );
|
|
|
}
|
|
@@ -703,8 +703,8 @@ namespace Framework
|
|
|
//! Löscht alle Elemente der Liste
|
|
|
void leeren()
|
|
|
{
|
|
|
- ArrayEintrag< TYP * > *e2 = 0;
|
|
|
- for( ArrayEintrag< TYP * > *e = entries; e; e = e->next )
|
|
|
+ ArrayEintrag< TYP* >* e2 = 0;
|
|
|
+ for( ArrayEintrag< TYP* >* e = entries; e; e = e->next )
|
|
|
{
|
|
|
if( e2 && e2->var && e2->set )
|
|
|
e2->var->release();
|
|
@@ -714,7 +714,7 @@ namespace Framework
|
|
|
if( e2 && e2->var && e2->set )
|
|
|
e2->var->release();
|
|
|
delete e2;
|
|
|
- entries = new ArrayEintrag< TYP * >();
|
|
|
+ entries = new ArrayEintrag< TYP* >();
|
|
|
entries->set = 0;
|
|
|
entries->next = 0;
|
|
|
last = entries;
|
|
@@ -723,14 +723,14 @@ namespace Framework
|
|
|
|
|
|
//! Gibt einen Iterator zurück.
|
|
|
//! Mit ++ kann durch die Liste iteriert werden
|
|
|
- Iterator< TYP * > begin() const
|
|
|
+ Iterator< TYP* > begin() const
|
|
|
{
|
|
|
- return Iterator< TYP * >( entries );
|
|
|
+ return Iterator< TYP* >( entries );
|
|
|
}
|
|
|
|
|
|
- Iterator< TYP * > end() const
|
|
|
+ Iterator< TYP* > end() const
|
|
|
{
|
|
|
- return Iterator< TYP * >( 0 );
|
|
|
+ return Iterator< TYP* >( 0 );
|
|
|
}
|
|
|
|
|
|
//! Gibt zurück, wie viele Elemente in der Liste sind
|
|
@@ -746,30 +746,30 @@ namespace Framework
|
|
|
|
|
|
//! Gibt den Wert des i-ten Elementes zurück mit erhöhtem Reference Counter
|
|
|
//! \param i Der index des gesuchten Elementes, (0) wenn der Index nicht existiert
|
|
|
- TYP *get( int i ) const
|
|
|
+ TYP* get( int i ) const
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i && e; ++a )
|
|
|
e = e->next;
|
|
|
if( e && e->set && e->var )
|
|
|
- return dynamic_cast<TYP *>(e->var->getThis());
|
|
|
- return (TYP *)0;
|
|
|
+ return dynamic_cast<TYP*>(e->var->getThis());
|
|
|
+ return (TYP*)0;
|
|
|
}
|
|
|
|
|
|
//! Gibt den Wert des i-ten Elementes zurück ohne erhöhten Reference Counter
|
|
|
//! \param i Der index des gesuchten Elementes, (0) wenn der Index nicht existiert
|
|
|
- TYP *z( int i ) const //! gibt den index - ten T zurück
|
|
|
+ TYP* z( int i ) const //! gibt den index - ten T zurück
|
|
|
{
|
|
|
if( i < 0 || i >= count )
|
|
|
throwOutOfRange( __FILE__, __LINE__, i, count );
|
|
|
- ArrayEintrag< TYP * > *e = entries;
|
|
|
+ ArrayEintrag< TYP* >* e = entries;
|
|
|
for( int a = 0; a < i && e; ++a )
|
|
|
e = e->next;
|
|
|
if( e && e->set && e->var )
|
|
|
- return (TYP *)e->var;
|
|
|
- return (TYP *)0;
|
|
|
+ return (TYP*)e->var;
|
|
|
+ return (TYP*)0;
|
|
|
}
|
|
|
|
|
|
//! Überprüft, ob ein Element in der Liste enthalten ist
|
|
@@ -780,7 +780,7 @@ namespace Framework
|
|
|
return i >= 0 && i < count;
|
|
|
}
|
|
|
|
|
|
- RCArray &operator=( const RCArray &arr )
|
|
|
+ RCArray& operator=( const RCArray& arr )
|
|
|
{
|
|
|
leeren();
|
|
|
int anz = arr.getEintragAnzahl();
|