// Note: Instrumentation statements are highlighted in green 

#ifndef __GUITAR_STRING_HPP
#define __GUITAR_STRING_HPP

#include <stl\vvector>
#include "note.hpp"

////////////////////////////////////////////////////////////////////////////////
// GuitarString class
///////////////////////////////////////////////////////////////////////////////

class GuitarString : public VObject  // Add VObject to the inheritance chain
{
DECLARE_VISIBILITY(GuitarString)  // Instrumentation statement

public:    // data
  Note openNote;
  float yPosition;

public:    // functions
  GuitarString(void);
  GuitarString(Note & base_note, unsigned short string_position);
  GuitarString(const GuitarString & g_string);
  virtual ~GuitarString(void);
  GuitarString & operator=(const GuitarString &g_string);
  bool operator==(const GuitarString &g_string) const;

};
DECLARE_VISIBILITY_CREATOR(GuitarString)  // Instrumentation statement

///////////////////////////////////////////////////////////////////////////////
// GuitarStringTable class
///////////////////////////////////////////////////////////////////////////////

typedef vvector<GuitarString> GuitarStringVector;

class GuitarStringTable : public VObject  // Add VObject to the inheritance chain
{
DECLARE_VISIBILITY(GuitarStringTable)  // Instrumentation statement

public:    // data

  GuitarStringVector guitarStringTable;

public:    // functions
  GuitarStringTable(void);
  GuitarStringTable(const GuitarStringTable & guitar_string);
  virtual ~GuitarStringTable(void);
  GuitarStringTable & operator=(const GuitarStringTable &guitar_string);
  void addString(GuitarString & a_string);
  GuitarStringVector::iterator GetGuitarStringTableIterator(char * guitar_string_name);
  GuitarString * GetGuitarString(char * guitar_string_name);
};
DECLARE_VISIBILITY_CREATOR(GuitarStringTable)  // Instrumentation statement

#endif // __GUITAR_STRING_HPP



Copyright 2002-2007 Outerface Technologies, Inc.