globjects  1.0.0.000000000000
Strict OpenGL objects wrapper.
AbstractStringSource.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include <string>
5 #include <vector>
6 
7 #include <globjects/globjects_api.h>
8 
11 
12 
13 namespace globjects
14 {
15 
16 
17 class CompositeStringSource;
18 
25 class GLOBJECTS_API AbstractStringSource : public Referenced, public Changeable
26 {
27 public:
28  virtual std::string string() const = 0;
29  virtual std::vector<std::string> strings() const;
30 
31  std::vector<const AbstractStringSource*> flatten() const;
32  virtual void flattenInto(std::vector<const AbstractStringSource*> & vector) const;
33 
34  virtual std::string shortInfo() const;
35 };
36 
37 
38 } // namespace globjects
Contains all the classes that wrap OpenGL functionality.
Superclass for all classes that use reference counting in globjects.
Definition: Referenced.h:22
Superclass for all types of static and dynamic strings, e.g. for the use as Shader code.
Definition: AbstractStringSource.h:25
Superclass of all objects that want others to signal that they have changed.
Definition: Changeable.h:22