2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://floralicense.org/license/
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
18 * @file FUiEffects_RuntimePointLight.h
19 * @brief This is the header file for a point light
22 #ifndef _FUI_EFFECTS_INTERNAL_RUNTIME_POINT_LIGHT_H_
23 #define _FUI_EFFECTS_INTERNAL_RUNTIME_POINT_LIGHT_H_
26 #include <utils/FUiEffects_Utils.h>
27 #include <FUiEffects_RuntimeUnitLight.h>
29 namespace Tizen { namespace Ui { namespace Effects { namespace _Runtime
32 //tolua_begin <--(!do not edit!)the beginning of export part to lua
36 //tolua_end <--(!do not edit!)the ending of export part to lua
40 * Returns a pointer to created point light
45 static PointLight* CreatePointLight(const std::string& name);
47 static PointLight* CreatePointLight(const string& name); //tolua_export <--(!do not edit!)the exporting line to lua
51 * Returns a pointer to created point light
56 static PointLight* CreatePointLight(bool enabled,
57 const std::string& name,
58 const Tizen::Ui::Effects::_Utils::Vec3f& colour,
60 const Tizen::Ui::Effects::_Utils::Vec3f& position);
63 * Returns a position of a point light
68 const Tizen::Ui::Effects::_Utils::Vec3f& GetPosition(void) const;
70 const Vector3& GetPosition(void) const; //tolua_export <--(!do not edit!)the exporting line to lua
74 * Sets a position for a point light
79 void SetPosition(const Tizen::Ui::Effects::_Utils::Vec3f& position);
81 void SetPosition(const Vector3& position); //tolua_export <--(!do not edit!)the exporting line to lua
85 * Sets a position for a point light
90 void SetPosition(float x, float y, float z); //tolua_export <--(!do not edit!)the exporting line to lua
93 * Returns a type of a point light as variable of enumeration type
98 virtual TypeUnitLight GetType(void) const;
101 * Resets all signs for this instance of class (e.g. isPositionChanged, isColourChanged)
106 virtual void ResetSigns(void);
115 * @remarks Clients of this class can create PointLight objects with using Create methods only
118 PointLight(const std::string& name);
125 * @remarks Clients of this class can create PointLight objects with using Create methods only
128 PointLight(bool enabled,
129 const std::string& name,
130 const Tizen::Ui::Effects::_Utils::Vec3f& colour,
132 const Tizen::Ui::Effects::_Utils::Vec3f& position
140 * @remarks Clients of this class can not destroy instances of this class (for purpose to avoid the sending an invalid unit light into scene)
143 virtual ~PointLight(void);
147 // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
148 PointLight(const PointLight& rhs);
149 // The implementation of this assignment operator is intentionally blank and declared as private to prohibit copying of objects.
150 PointLight& operator=(const PointLight& rhs);
154 bool isPositionChanged;
158 Tizen::Ui::Effects::_Utils::Vec3f __position; /**< position of a point light on a scene (scene's coordinates) */
160 }; //PointLight //tolua_export <--(!do not edit!)the exporting line to lua
162 } } } } // Tizen::Ui::Effects::_Runtime
164 #endif // _FUI_EFFECTS_INTERNAL_RUNTIME_POINT_LIGHT_H_