GL Studio C++ Runtime API
splash_display.h
Go to the documentation of this file.
1/*! \file
2 \brief The SplashDisplay class.
3
4 \par Copyright Information
5
6 Copyright (c) 2019 by The DiSTI Corporation.<br>
7 11301 Corporate Blvd; Suite 100<br>
8 Orlando, Florida 32817<br>
9 USA<br>
10 <br>
11 All rights reserved.<br>
12
13 This Software contains proprietary trade secrets of DiSTI and may not be
14reproduced, in whole or part, in any form, or by any means of electronic,
15mechanical, or otherwise, without the written permission of DiSTI. Said
16permission may be derived through the purchase of applicable DiSTI product
17licenses which detail the distribution rights of this content and any
18Derivative Works based on this or other copyrighted DiSTI Software.
19
20 NO WARRANTY. THE SOFTWARE IS PROVIDED "AS-IS," WITHOUT WARRANTY OF ANY KIND,
21AND ANY USE OF THIS SOFTWARE PRODUCT IS AT YOUR OWN RISK. TO THE MAXIMUM EXTENT
22PERMITTED BY APPLICABLE LAW, DISTI AND ITS SUPPLIERS DISCLAIM ALL WARRANTIES
23AND CONDITIONS, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
24IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY AND/OR FITNESS FOR A
25PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT, WITH REGARD TO THE SOFTWARE.
26
27 LIMITATION OF LIABILITY. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW,
28IN NO EVENT SHALL DISTI OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
29INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION,
30DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS
31INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR
32INABILITY TO USE THE SOFTWARE, EVEN IF DISTI HAS BEEN ADVISED OF THE POSSIBILITY
33OF SUCH DAMAGES. DISTI'S ENTIRE LIABILITY AND YOUR EXCLUSIVE REMEDY SHALL NOT
34EXCEED FIVE DOLLARS (US$5.00).
35
36 The aforementioned terms and restrictions are governed by the laws of the
37State of Florida and the United States of America.
38
39*/
40
41///////////////////////////////////////////////////////////////////////////////
42// This file is generated by GL Studio. DO NOT EDIT.
43// To modify, run "glstudio splashtemp.gls", edit, then select Code/Generate All.
44// Generated from splashtemp.gls using GL Studio 8.0.0
45///////////////////////////////////////////////////////////////////////////////
46#ifndef _splash_display_h_
47#define _splash_display_h_
48
49#include "callback_caller.h"
50#include "display.h"
51#include "display_frame.h"
52#include "gls_include.h"
53
54#include "dynamic_library.h"
55
56// Fonts referenced by design and at run-time
57
58#include "component_base.h"
59#include "glpolygon.h"
60
61/// Provides support for creating DLLs.
62#if( defined( GLSGEN_EXPORT_SplashDisplay ) || defined( GLSGEN_IMPORT_SplashDisplay ) || defined( GLS_EXPORT_GENERATED ) || defined( GLS_IMPORT_GENERATED ) ) \
63 && defined( _MSC_VER )
64# if defined( GLSGEN_EXPORT_SplashDisplay ) || defined( GLS_EXPORT_GENERATED )
65# define GLSGEN_SplashDisplay_EXPORT __declspec( dllexport )
66# else
67# define GLSGEN_SplashDisplay_EXPORT __declspec( dllimport )
68# endif
69#else
70# define GLSGEN_SplashDisplay_EXPORT
71#endif
72///////////////////////////////////////////////////////////////////////////////
73
74//////////////////// User Code from section: "file splash_display.h" ////////////
75
76///////////////////////////////////////////////////////////////////////////////
77namespace disti
78{
79/// \details The SplashDisplay class. Handles the visuals for the runtime splash screen.
81{
82public:
83 DISTI_DEPRECATED( "This identifier is forbidden by the C++ standard. Use BaseClass instead." )
84 typedef ComponentBase _BaseClass; ///< Deprecated typedef for the base class.
85 typedef ComponentBase BaseClass; ///< Typedef for the base class.
86
87 /// Constructor
88 /// \param name Unused, kept for backward compatibility.
89 GLSGEN_SplashDisplay_EXPORT SplashDisplay( const char* name = NULL );
90
91 /// Creates the geometry for this object.
93
94 typedef CallbackMethodCallerTemplate<SplashDisplay> CallbackMethodCaller; ///< Typedef for callback methods associated with this object.
95
96 // Object creators
97 // Textures
98 static unsigned char* rgb_data_1[]; ///< Inline data for splash texture.
99 static glsInlineImage image_data_1; ///< Inline image detail structure for splash texture.
100
101 // Geometry
102
103private:
104protected:
105public:
106 GLPolygon* Background; ///< The splash background object.
107 //////////////////// User Code from section: "Class Declaration" //////////////
108
109 ///////////////////////////////////////////////////////////////////////////////
110public:
111 // Methods
112 /**
113 */
115 /**
116 */
117 virtual GLSGEN_SplashDisplay_EXPORT void Calculate( double time );
118 /**
119 */
120
121 /// Inner method to adjust the splash image to fit on the screen.
122 /// \param screenW The screen width in pixels.
123 /// \param screenH The screen height in pixels.
124 /// \param boxW The image width in pixels.
125 /// \param boxH The image height in pixels.
126 /// \param newW The returned width in pixels.
127 /// \param newH The returned height in pixels.
128 virtual GLSGEN_SplashDisplay_EXPORT void FitOnScreen( float screenW, float screenH, float boxW, float boxH, float& newW, float& newH );
129
130 /// Adjust the splash image to fit on the screen.
131 /// \param width The screen width in pixels.
132 /// \param height The screen height in pixels.
133 virtual GLSGEN_SplashDisplay_EXPORT void AdjustToFit( int width, int height );
134
135 /// \return A pointer to a new copy of this object.
136 /// \param generateNames Whether or not to generate an instance name for this object.
137 virtual GLSGEN_SplashDisplay_EXPORT DisplayObject* CloneObject( bool generateNames = false );
138
139#ifndef GLES
140 /** Get the details of the Cpp Interface
141 * The actual interface is exposed in compiled code.
142 * \param addToThisList A list to add to and then return. Creates a new one if NULL.
143 * \return A templated list.
144 * The caller must call the corresponding free method to
145 * safely free the memory.
146 */
147
150#endif
151};
152} //namespace disti
153
154#endif
The disti::CallbackMethodCallerTemplate class and global enumerations.
Definition: callback_caller.h:61
Definition: component_base.h:68
Definition: display.h:96
Definition: dynamic_array.h:79
The Polygon class. Implements Polygons.
Definition: glpolygon.h:56
Definition: group.h:53
Definition: splash_display.h:81
virtual void FitOnScreen(float screenW, float screenH, float boxW, float boxH, float &newW, float &newH)
static unsigned char * rgb_data_1[]
Inline data for splash texture.
Definition: splash_display.h:98
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
GLPolygon * Background
The splash background object. ///////////////// User Code from section: "Class Declaration" /////////...
Definition: splash_display.h:106
virtual void AdjustToFit(int width, int height)
virtual void Calculate(double time)
void CreateObjects()
Creates the geometry for this object.
virtual DisplayObject * CloneObject(bool generateNames=false)
virtual void Initialize()
static glsInlineImage image_data_1
Inline image detail structure for splash texture.
Definition: splash_display.h:99
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
The disti::ComponentBase class.
The disti::DisplayObject class and global enumerations.
The disti::DisplayFrame class.
A cross-platform class for loading dynamic link libraries and shared objects.
The disti::GLPolygon class. Implements Polygons.
#define DISTI_DEPRECATED(msg)
Defines whether this compiler supports the C++14 deprecated attribute.
Definition: gls_cpp_lang_support.h:457
A file for all GL Studio files to include.
Force inclusion of the DirectShow library.
Definition: bmpimage.h:47
#define GLSGEN_SplashDisplay_EXPORT
Provides support for creating DLLs.
Definition: splash_display.h:70
Definition: image.h:82