/usr/include/globjects/ObjectVisitor.h is in libglobjects-dev 1.0.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #pragma once
#include <globjects/globjects_api.h>
namespace globjects
{
class Object;
class Buffer;
class Framebuffer;
class Program;
class ProgramPipeline;
class Query;
class Renderbuffer;
class Sampler;
class Shader;
class Texture;
class TransformFeedback;
class VertexArray;
/** \brief Implements a Visitor Pattern to iterate over all tracked globjects objects.
Subclasses should implement the appropriate visit*() methods for those types
they want to handle.
*/
class GLOBJECTS_API ObjectVisitor
{
public:
ObjectVisitor();
virtual ~ObjectVisitor();
virtual void visit(Object * object);
virtual void visitBuffer(Buffer * buffer);
virtual void visitFrameBufferObject(Framebuffer * fbo);
virtual void visitProgram(Program * program);
virtual void visitProgramPipeline(ProgramPipeline * programPipeline);
virtual void visitQuery(Query * query);
virtual void visitRenderBufferObject(Renderbuffer * rbo);
virtual void visitSampler(Sampler * sampler);
virtual void visitShader(Shader * shader);
virtual void visitTexture(Texture * texture);
virtual void visitTransformFeedback(TransformFeedback * transformfeedback);
virtual void visitVertexArray(VertexArray * vao);
};
} // namespace globjects
|