Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/lib/graphics/importer/array.h @ 4196

Last change on this file since 4196 was 4109, checked in by bensch, 20 years ago

orxonox/trunk: little error in model, and also a speed-fix in Array

File size: 1.4 KB
Line 
1/*!
2  \file array.h
3  \brief Contains the Array Class that handles float arrays.
4  this class creates a Array of a semi-Dynamic length.
5  beware, that after finalizing the array may not be resized again.
6*/
7
8#ifndef _ARRAY_H
9#define _ARRAY_H
10
11#include "stdincl.h"
12
13//! Array Class that handles dynamic-float arrays.
14class Array
15{
16 public:
17  Array ();
18  ~Array();
19
20  void initializeArray ();
21  void finalizeArray (void);
22  void addEntry (GLfloat entry);
23  void addEntry(GLfloat entry0, GLfloat entry1, GLfloat entry2);
24 
25  /** \returns The array */
26  inline const GLfloat* getArray () const {return this->array;}
27  /**   \returns The Count of entries in the Array*/
28  inline int getCount(void)const {return this->entryCount;}
29  void debug(void) const ;
30 private:
31  //! One entry of the Array
32  struct Entry
33  {
34    GLfloat value;  //!< The value of this Entry.
35    Entry* next;    //!< Pointer to the Next entry.
36  };
37
38  GLfloat* array;      //!< The array that will be produced when finalizing the Array.
39  int entryCount;      //!< The count of Entries in this Array.
40  bool finalized;      //!< If this variable is set to true, the Array can not be changed anymore. true if finalized, false else (initially).
41  Entry* firstEntry;   //!< Pointer to the first Entry of this Array
42  Entry* currentEntry; //!< Pointer to the current Entry of this Array. The one Entry we are working with.
43 
44 
45};
46
47#endif
Note: See TracBrowser for help on using the repository browser.