All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SORTED_FLOATS Class Reference

#include <sortflts.h>

Public Member Functions

 SORTED_FLOATS ()
 
SORTED_FLOATS::add

Add a new entry to the sorted lsit of floats.

void add (float value, inT32 key)
 
SORTED_FLOATS::remove

Remove an entry from the sorted lsit of floats.

void remove (inT32 key)
 
SORTED_FLOATS::operator[]

Return the floating point value of the given index into the list.

float operator[] (inT32 index)
 

Detailed Description

Definition at line 44 of file sortflts.h.

Constructor & Destructor Documentation

SORTED_FLOATS::SORTED_FLOATS ( )
inline

empty constructor

Definition at line 48 of file sortflts.h.

48  {
49  it.set_to_list (&list);
50  }

Member Function Documentation

void SORTED_FLOATS::add ( float  value,
inT32  key 
)

add sample

Parameters
valuesample float
keyretrieval key

Definition at line 28 of file sortflts.cpp.

30  {
31  SORTED_FLOAT *new_float = new SORTED_FLOAT (value, key);
32 
33  if (list.empty ())
34  it.add_after_stay_put (new_float);
35  else {
36  it.move_to_first ();
37  while (!it.at_last () && it.data ()->entry < value)
38  it.forward ();
39  if (it.data ()->entry < value)
40  it.add_after_stay_put (new_float);
41  else
42  it.add_before_stay_put (new_float);
43  }
44 }
float SORTED_FLOATS::operator[] ( inT32  index)

index to list

Parameters
indexitem to get

Definition at line 73 of file sortflts.cpp.

75  {
76  it.move_to_first ();
77  return it.data_relative (index)->entry;
78 }
void SORTED_FLOATS::remove ( inT32  key)

delete sample

Parameters
keykey to delete

Definition at line 53 of file sortflts.cpp.

54  {
55  if (!list.empty ()) {
56  for (it.mark_cycle_pt (); !it.cycled_list (); it.forward ()) {
57  if (it.data ()->address == key) {
58  delete it.extract ();
59  return;
60  }
61  }
62  }
63 }

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