mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-21 10:13:43 +03:00
Fix cyclic dependency between OpenGl (OpenGl_Vec) and Graphic3d (Graphic3d_ShaderVariable)
This commit is contained in:
parent
bd0b3e6097
commit
c4a8a6bb7b
@ -56,6 +56,7 @@ Graphic3d_NListOfHAsciiString.hxx
|
|||||||
Graphic3d_AspectText3d.cxx
|
Graphic3d_AspectText3d.cxx
|
||||||
Graphic3d_PtrFrameBuffer.hxx
|
Graphic3d_PtrFrameBuffer.hxx
|
||||||
Graphic3d_BufferType.hxx
|
Graphic3d_BufferType.hxx
|
||||||
|
Graphic3d_Vec.hxx
|
||||||
Graphic3d_Vec2.hxx
|
Graphic3d_Vec2.hxx
|
||||||
Graphic3d_Vec3.hxx
|
Graphic3d_Vec3.hxx
|
||||||
Graphic3d_Vec4.hxx
|
Graphic3d_Vec4.hxx
|
||||||
|
@ -24,17 +24,15 @@
|
|||||||
IMPLEMENT_STANDARD_HANDLE (Graphic3d_ShaderVariable, Standard_Transient)
|
IMPLEMENT_STANDARD_HANDLE (Graphic3d_ShaderVariable, Standard_Transient)
|
||||||
IMPLEMENT_STANDARD_RTTIEXT(Graphic3d_ShaderVariable, Standard_Transient)
|
IMPLEMENT_STANDARD_RTTIEXT(Graphic3d_ShaderVariable, Standard_Transient)
|
||||||
|
|
||||||
//
|
|
||||||
// Specific instantiations of struct templates to avoid compilation warnings
|
// Specific instantiations of struct templates to avoid compilation warnings
|
||||||
//
|
template struct Graphic3d_UniformValue<Standard_Integer>;
|
||||||
template struct Graphic3d_UniformValue<int>;
|
template struct Graphic3d_UniformValue<Standard_ShortReal>;
|
||||||
template struct Graphic3d_UniformValue<float>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec2>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec2>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec3>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec3>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec4>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec4>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec2i>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec2i>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec3i>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec3i>;
|
template struct Graphic3d_UniformValue<Graphic3d_Vec4i>;
|
||||||
template struct Graphic3d_UniformValue<OpenGl_Vec4i>;
|
|
||||||
|
|
||||||
// =======================================================================
|
// =======================================================================
|
||||||
// function : ~Graphic3d_ValueInterface
|
// function : ~Graphic3d_ValueInterface
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#ifndef _Graphic3d_ShaderVariable_HeaderFile
|
#ifndef _Graphic3d_ShaderVariable_HeaderFile
|
||||||
#define _Graphic3d_ShaderVariable_HeaderFile
|
#define _Graphic3d_ShaderVariable_HeaderFile
|
||||||
|
|
||||||
#include <OpenGl_Vec.hxx>
|
#include <Graphic3d_Vec.hxx>
|
||||||
#include <Standard_Transient.hxx>
|
#include <Standard_Transient.hxx>
|
||||||
#include <TCollection_AsciiString.hxx>
|
#include <TCollection_AsciiString.hxx>
|
||||||
|
|
||||||
@ -49,42 +49,42 @@ struct Graphic3d_UniformValueTypeID {
|
|||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<int> {
|
struct Graphic3d_UniformValueTypeID<Standard_Integer> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<float> {
|
struct Graphic3d_UniformValueTypeID<Standard_ShortReal> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec2> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec2> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec3> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec3> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec4> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec4> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec2i> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec2i> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec3i> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec3i> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct Graphic3d_UniformValueTypeID<OpenGl_Vec4i> {
|
struct Graphic3d_UniformValueTypeID<Graphic3d_Vec4i> {
|
||||||
static const Standard_Size ID = __LINE__;
|
static const Standard_Size ID = __LINE__;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -103,28 +103,28 @@ struct Graphic3d_UniformValue : public Graphic3d_ValueInterface
|
|||||||
};
|
};
|
||||||
|
|
||||||
//! Integer uniform value.
|
//! Integer uniform value.
|
||||||
typedef Graphic3d_UniformValue<int> Graphic3d_UniformInt;
|
typedef Graphic3d_UniformValue<Standard_Integer> Graphic3d_UniformInt;
|
||||||
|
|
||||||
//! Integer uniform 2D vector.
|
//! Integer uniform 2D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec2i> Graphic3d_UniformVec2i;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec2i> Graphic3d_UniformVec2i;
|
||||||
|
|
||||||
//! Integer uniform 3D vector.
|
//! Integer uniform 3D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec3i> Graphic3d_UniformVec3i;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec3i> Graphic3d_UniformVec3i;
|
||||||
|
|
||||||
//! Integer uniform 4D vector.
|
//! Integer uniform 4D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec4i> Graphic3d_UniformVec4i;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec4i> Graphic3d_UniformVec4i;
|
||||||
|
|
||||||
//! Floating-point uniform value.
|
//! Floating-point uniform value.
|
||||||
typedef Graphic3d_UniformValue<float> Graphic3d_UniformFloat;
|
typedef Graphic3d_UniformValue<Standard_ShortReal> Graphic3d_UniformFloat;
|
||||||
|
|
||||||
//! Floating-point uniform 2D vector.
|
//! Floating-point uniform 2D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec2> Graphic3d_UniformVec2;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec2> Graphic3d_UniformVec2;
|
||||||
|
|
||||||
//! Floating-point uniform 3D vector.
|
//! Floating-point uniform 3D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec3> Graphic3d_UniformVec3;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec3> Graphic3d_UniformVec3;
|
||||||
|
|
||||||
//! Floating-point uniform 4D vector.
|
//! Floating-point uniform 4D vector.
|
||||||
typedef Graphic3d_UniformValue<OpenGl_Vec4> Graphic3d_UniformVec4;
|
typedef Graphic3d_UniformValue<Graphic3d_Vec4> Graphic3d_UniformVec4;
|
||||||
|
|
||||||
//! Describes custom uniform shader variable.
|
//! Describes custom uniform shader variable.
|
||||||
class Graphic3d_ShaderVariable : public Standard_Transient
|
class Graphic3d_ShaderVariable : public Standard_Transient
|
||||||
|
27
src/Graphic3d/Graphic3d_Vec.hxx
Normal file
27
src/Graphic3d/Graphic3d_Vec.hxx
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
// Created on: 2013-10-25
|
||||||
|
// Created by: Kirill GAVRILOV
|
||||||
|
// Copyright (c) 2013 OPEN CASCADE SAS
|
||||||
|
//
|
||||||
|
// The content of this file is subject to the Open CASCADE Technology Public
|
||||||
|
// License Version 6.5 (the "License"). You may not use the content of this file
|
||||||
|
// except in compliance with the License. Please obtain a copy of the License
|
||||||
|
// at http://www.opencascade.org and read it completely before using this file.
|
||||||
|
//
|
||||||
|
// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
|
||||||
|
// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
|
||||||
|
//
|
||||||
|
// The Original Code and all software distributed under the License is
|
||||||
|
// distributed on an "AS IS" basis, without warranty of any kind, and the
|
||||||
|
// Initial Developer hereby disclaims all such warranties, including without
|
||||||
|
// limitation, any warranties of merchantability, fitness for a particular
|
||||||
|
// purpose or non-infringement. Please see the License for the specific terms
|
||||||
|
// and conditions governing the rights and limitations under the License.
|
||||||
|
|
||||||
|
#ifndef _Graphic3d_Vec_H__
|
||||||
|
#define _Graphic3d_Vec_H__
|
||||||
|
|
||||||
|
#include <Graphic3d_Vec2.hxx>
|
||||||
|
#include <Graphic3d_Vec3.hxx>
|
||||||
|
#include <Graphic3d_Vec4.hxx>
|
||||||
|
|
||||||
|
#endif // _Graphic3d_Vec_H__
|
@ -22,5 +22,10 @@
|
|||||||
#include <Standard_TypeDef.hxx>
|
#include <Standard_TypeDef.hxx>
|
||||||
|
|
||||||
typedef NCollection_Vec2<Standard_ShortReal> Graphic3d_Vec2;
|
typedef NCollection_Vec2<Standard_ShortReal> Graphic3d_Vec2;
|
||||||
|
typedef NCollection_Vec2<Standard_Real> Graphic3d_Vec2d;
|
||||||
|
typedef NCollection_Vec2<Standard_Integer> Graphic3d_Vec2i;
|
||||||
|
typedef NCollection_Vec2<unsigned int> Graphic3d_Vec2u;
|
||||||
|
typedef NCollection_Vec2<Standard_Byte> Graphic3d_Vec2ub;
|
||||||
|
typedef NCollection_Vec2<Standard_Character> Graphic3d_Vec2b;
|
||||||
|
|
||||||
#endif // _Graphic3d_Vec2_HeaderFile
|
#endif // _Graphic3d_Vec2_HeaderFile
|
||||||
|
@ -22,5 +22,10 @@
|
|||||||
#include <Standard_TypeDef.hxx>
|
#include <Standard_TypeDef.hxx>
|
||||||
|
|
||||||
typedef NCollection_Vec3<Standard_ShortReal> Graphic3d_Vec3;
|
typedef NCollection_Vec3<Standard_ShortReal> Graphic3d_Vec3;
|
||||||
|
typedef NCollection_Vec3<Standard_Real> Graphic3d_Vec3d;
|
||||||
|
typedef NCollection_Vec3<Standard_Integer> Graphic3d_Vec3i;
|
||||||
|
typedef NCollection_Vec3<unsigned int> Graphic3d_Vec3u;
|
||||||
|
typedef NCollection_Vec3<Standard_Byte> Graphic3d_Vec3ub;
|
||||||
|
typedef NCollection_Vec3<Standard_Character> Graphic3d_Vec3b;
|
||||||
|
|
||||||
#endif // _Graphic3d_Vec3_HeaderFile
|
#endif // _Graphic3d_Vec3_HeaderFile
|
||||||
|
@ -22,5 +22,10 @@
|
|||||||
#include <Standard_TypeDef.hxx>
|
#include <Standard_TypeDef.hxx>
|
||||||
|
|
||||||
typedef NCollection_Vec4<Standard_ShortReal> Graphic3d_Vec4;
|
typedef NCollection_Vec4<Standard_ShortReal> Graphic3d_Vec4;
|
||||||
|
typedef NCollection_Vec4<Standard_Real> Graphic3d_Vec4d;
|
||||||
|
typedef NCollection_Vec4<Standard_Integer> Graphic3d_Vec4i;
|
||||||
|
typedef NCollection_Vec4<unsigned int> Graphic3d_Vec4u;
|
||||||
|
typedef NCollection_Vec4<Standard_Byte> Graphic3d_Vec4ub;
|
||||||
|
typedef NCollection_Vec4<Standard_Character> Graphic3d_Vec4b;
|
||||||
|
|
||||||
#endif // _Graphic3d_Vec4_HeaderFile
|
#endif // _Graphic3d_Vec4_HeaderFile
|
||||||
|
@ -20,30 +20,30 @@
|
|||||||
#ifndef _OpenGl_Vec_H__
|
#ifndef _OpenGl_Vec_H__
|
||||||
#define _OpenGl_Vec_H__
|
#define _OpenGl_Vec_H__
|
||||||
|
|
||||||
#include <NCollection_Vec4.hxx>
|
#include <Graphic3d_Vec.hxx>
|
||||||
|
|
||||||
typedef NCollection_Vec2<int> OpenGl_Vec2i;
|
typedef Graphic3d_Vec2i OpenGl_Vec2i;
|
||||||
typedef NCollection_Vec3<int> OpenGl_Vec3i;
|
typedef Graphic3d_Vec3i OpenGl_Vec3i;
|
||||||
typedef NCollection_Vec4<int> OpenGl_Vec4i;
|
typedef Graphic3d_Vec4i OpenGl_Vec4i;
|
||||||
|
|
||||||
typedef NCollection_Vec2<char> OpenGl_Vec2b;
|
typedef Graphic3d_Vec2b OpenGl_Vec2b;
|
||||||
typedef NCollection_Vec3<char> OpenGl_Vec3b;
|
typedef Graphic3d_Vec3b OpenGl_Vec3b;
|
||||||
typedef NCollection_Vec4<char> OpenGl_Vec4b;
|
typedef Graphic3d_Vec4b OpenGl_Vec4b;
|
||||||
|
|
||||||
typedef NCollection_Vec2<unsigned int> OpenGl_Vec2u;
|
typedef Graphic3d_Vec2u OpenGl_Vec2u;
|
||||||
typedef NCollection_Vec3<unsigned int> OpenGl_Vec3u;
|
typedef Graphic3d_Vec3u OpenGl_Vec3u;
|
||||||
typedef NCollection_Vec4<unsigned int> OpenGl_Vec4u;
|
typedef Graphic3d_Vec4u OpenGl_Vec4u;
|
||||||
|
|
||||||
typedef NCollection_Vec2<unsigned char> OpenGl_Vec2ub;
|
typedef Graphic3d_Vec2ub OpenGl_Vec2ub;
|
||||||
typedef NCollection_Vec3<unsigned char> OpenGl_Vec3ub;
|
typedef Graphic3d_Vec3ub OpenGl_Vec3ub;
|
||||||
typedef NCollection_Vec4<unsigned char> OpenGl_Vec4ub;
|
typedef Graphic3d_Vec4ub OpenGl_Vec4ub;
|
||||||
|
|
||||||
typedef NCollection_Vec2<float> OpenGl_Vec2;
|
typedef Graphic3d_Vec2 OpenGl_Vec2;
|
||||||
typedef NCollection_Vec3<float> OpenGl_Vec3;
|
typedef Graphic3d_Vec3 OpenGl_Vec3;
|
||||||
typedef NCollection_Vec4<float> OpenGl_Vec4;
|
typedef Graphic3d_Vec4 OpenGl_Vec4;
|
||||||
|
|
||||||
typedef NCollection_Vec2<double> OpenGl_Vec2d;
|
typedef Graphic3d_Vec2d OpenGl_Vec2d;
|
||||||
typedef NCollection_Vec3<double> OpenGl_Vec3d;
|
typedef Graphic3d_Vec3d OpenGl_Vec3d;
|
||||||
typedef NCollection_Vec4<double> OpenGl_Vec4d;
|
typedef Graphic3d_Vec4d OpenGl_Vec4d;
|
||||||
|
|
||||||
#endif // _OpenGl_Vec_H__
|
#endif // _OpenGl_Vec_H__
|
||||||
|
Loading…
x
Reference in New Issue
Block a user