Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
SoTextureCubeMap.h
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2014 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : VSG (MMM YYYY)
22**=======================================================================*/
23
24
25#ifndef _SO_TEXTURE_CUBE_MAP_
26#define _SO_TEXTURE_CUBE_MAP_
27
28#include <Inventor/fields/SoSFColor.h>
29#include <Inventor/fields/SoSFEnum.h>
30#include <Inventor/fields/SoSFImage.h>
31#include <Inventor/fields/SoMFFilePathString.h>
32#include <Inventor/fields/SoSFBool.h>
33#include <Inventor/fields/SoSFNode.h>
34#include <Inventor/nodes/SoNode.h>
35#include <Inventor/nodes/SoTexture.h>
36#include <Inventor/image/SbRasterImage.h>
37#include <Inventor/sys/SoGLType.h>
38#include <Inventor/threads/SbThreadStorage.h>
39
40class SoSensor;
41class SbThreadRWMutex;
42
43#ifdef _MSC_VER
44#pragma warning( push )
45#pragma warning(disable:4251)
46#endif
47
49//
50// Class: SoTextureCubeMap
51//
52// Texture node.
53//
55
57typedef SbBool CubeMapPrequalifyFileCallback(const SbString &, void *, SoTextureCubeMap *);
58
59SO_PIMPL_PUBLIC_DECLARATION(SoTextureCubeMap);
60
227
228 SO_NODE_HEADER(SoTextureCubeMap);
229
230 SO_PIMPL_PUBLIC_HEADER(SoTextureCubeMap);
231
232 public:
233
249
278
291
303
304
310
315
316 private:
317 virtual void doAction(SoAction *action);
318 virtual void GLRender(SoGLRenderAction *action);
319
320 static void setPrequalifyFileCallBack(CubeMapPrequalifyFileCallback *p_cb, void *u_data);
321 static CubeMapPrequalifyFileCallback *getPrequalifyFileCallBack( void *&user_data );
322 void allowPrequalifyFile(SbBool);
323 SbBool isAllowPrequalifyFile() const;
324
325
326 private:
327 static void initClass();
328 static void exitClass();
329
330 // Manages field dependencies, when one of them change
331 virtual void fieldHasChanged( SoField *field ); // override of SoFieldContainer
332
333 virtual void copyContents(const SoFieldContainer *fromFC, SbBool copyConnections);
334
335 private:
336 // Reads stuff into instance. Returns FALSE on error.
337 virtual SbBool readInstance(SoInput *in, unsigned short flags);
338
339 virtual ~SoTextureCubeMap();
340
341};
342
343#ifdef _MSC_VER
344#pragma warning( pop )
345#endif
346
347#endif /* _SO_TEXTURE_CUBE_MAP_ */
348
349
Class for smart character strings.
Definition SbString.h:202
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Portable readers...
Abstract base class for all actions.
Definition SoAction.h:132
Abstract base class for objects that contain fields.
Base class for all fields.
Definition SoField.h:234
Renders a scene graph using Open Inventor's Render Engine.
Used to read Open Inventor data files.
Definition SoInput.h:363
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Multiple-value f...
Field containing an enumerated value.
Definition SoSFEnum.h:89
Field containing a floating-point value.
Definition SoSFFloat.h:78
Field containing a 2D image.
Definition SoSFImage.h:126
Field containing a a node.
Definition SoSFNode.h:97
Abstract base class for Open Inventor sensors.
Definition SoSensor.h:100
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Cube texture map...
SoMFFilePathString filenames
Names file(s) from which to read texture image(s).
SoSFImage imageNegY
See imagePosX.
SoTextureCubeMap()
Creates a texture node with default settings.
SoSFImage imageNegZ
See imagePosX.
SoSFEnum wrapR
Indicates what to do when texture coordinates in the R (depth) direction lie outside the range 0-1.
SoSFImage imagePosZ
See imagePosX.
SoSFNode renderToTextureProperty
Specifies an SoRenderToTextureProperty node containing a scene graph that will be rendered to create ...
SoSFEnum wrapT
Indicates what to do when texture coordinates in the T (vertical) direction lie outside the range 0-1...
SoSFImage imagePosY
See imagePosX.
SoSFImage imageNegX
See imagePosX.
SoSFImage imagePosX
Contains an in-memory representation of the texture map.
SoSFFloat HDRIExposure
Specifies an exposure factor when using an HDRI file.
Abstract base class for texture mapping nodes.
Definition SoTexture.h:156
int SbBool
Boolean type.
Definition SbBase.h:87