Carna Version 3.3.3
Loading...
Searching...
No Matches
BufferedVectorFieldTexture.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2010 - 2015 Leonid Kostrykin
3 *
4 * Chair of Medical Engineering (mediTEC)
5 * RWTH Aachen University
6 * Pauwelsstr. 20
7 * 52074 Aachen
8 * Germany
9 *
10 */
11
12#ifndef BUFFEREDVECTORFIELDTEXTURE_H_6014714286
13#define BUFFEREDVECTORFIELDTEXTURE_H_6014714286
14
17#include <memory>
18
23namespace Carna
24{
25
26namespace base
27{
28
29
30
31// ----------------------------------------------------------------------------------
32// BufferedVectorFieldTexture
33// ----------------------------------------------------------------------------------
34
43template< typename BufferedVectorFieldType >
45{
46
47protected:
48
56
57public:
58
63
71
76 virtual bool controlsSameVideoResource( const GeometryFeature& other ) const override;
77
78}; // BufferedVectorFieldTexture
79
80
81template< typename BufferedVectorFieldType >
92
93
94template< typename BufferedVectorFieldType >
100
101
102template< typename BufferedVectorFieldType >
104{
107 = dynamic_cast< const CompatibleBufferedVectorFieldTexture* >( &other );
108 if( other2 == nullptr )
109 {
110 return false;
111 }
112 else
113 {
114 return &field == &other2->field;
115 }
116}
117
118
119
120} // namespace Carna :: base
121
122} // namespace Carna
123
124#endif // BUFFEREDVECTORFIELDTEXTURE_H_6014714286
Defines Carna::base::BufferedVectorFieldFormat.
Defines Carna::base::ManagedTexture3D.
Represents an association.
Definition Association.h:45
Specializes the ManagedTexture3D class s.t. the texture's data is initialized from a math::VectorFiel...
const BufferedVectorFieldType & field
References the math::VectorField to be uploaded to the texture.
static BufferedVectorFieldTexture< BufferedVectorFieldType > & create(const BufferedVectorFieldType &field)
Instantiates. Invoke release when it isn't needed any longer.
BufferedVectorFieldTexture(const BufferedVectorFieldType &field)
Instantiates.
virtual bool controlsSameVideoResource(const GeometryFeature &other) const override
Tells true if other is of same type and references the same field. Tells false otherwise.
Represents "components" that are aggregated by Geometry objects. Closer description is given here.
Represents 3D OpenGL texture object whose lifetime is managed by instances of this class.
Maps math::VectorField implementations to Texture formats.