Updated demos to use DALi clang-format
[platform/core/uifw/dali-demo.git] / examples / point-mesh / point-mesh-example.cpp
index 38b4028..37fb023 100644 (file)
 #include <dali-toolkit/dali-toolkit.h>
 
 // INTERNAL INCLUDES
-#include "shared/view.h"
 #include "shared/utility.h"
+#include "shared/view.h"
 
 using namespace Dali;
 
 namespace
 {
-const char* MATERIAL_SAMPLE( DEMO_IMAGE_DIR "gallery-small-48.jpg" );
-const char* MATERIAL_SAMPLE2( DEMO_IMAGE_DIR "gallery-medium-19.jpg" );
+const char* MATERIAL_SAMPLE(DEMO_IMAGE_DIR "gallery-small-48.jpg");
+const char* MATERIAL_SAMPLE2(DEMO_IMAGE_DIR "gallery-medium-19.jpg");
 
-#define MAKE_SHADER(A)#A
+#define MAKE_SHADER(A) #A
 
 const char* VERTEX_SHADER = MAKE_SHADER(
-attribute mediump vec2    aPosition;
-attribute highp   float   aHue;
-varying   mediump vec2    vTexCoord;
-uniform   mediump mat4    uMvpMatrix;
-uniform   mediump vec3    uSize;
-uniform   mediump float   uPointSize;
-uniform   lowp    vec4    uFadeColor;
-varying   mediump vec3    vVertexColor;
-varying   mediump float   vHue;
-
-vec3 hsv2rgb(vec3 c)
-{
-  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
-  vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
-  return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
-}
+  attribute mediump vec2 aPosition;
+  attribute highp float  aHue;
+  varying mediump vec2   vTexCoord;
+  uniform mediump mat4   uMvpMatrix;
+  uniform mediump vec3   uSize;
+  uniform mediump float  uPointSize;
+  uniform lowp vec4      uFadeColor;
+  varying mediump vec3   vVertexColor;
+  varying mediump float  vHue;
+
+  vec3 hsv2rgb(vec3 c) {
+    vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
+    vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
+    return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
+  }
 
-void main()
-{
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
-  vertexPosition.xyz *= (uSize-uPointSize);
-  vertexPosition = uMvpMatrix * vertexPosition;
-  vVertexColor = hsv2rgb( vec3( aHue, 0.7, 1.0 ) );
-  vHue = aHue;
-  gl_PointSize = uPointSize;
-  gl_Position = vertexPosition;
-}
-);
+  void main() {
+    mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+    vertexPosition.xyz *= (uSize - uPointSize);
+    vertexPosition = uMvpMatrix * vertexPosition;
+    vVertexColor   = hsv2rgb(vec3(aHue, 0.7, 1.0));
+    vHue           = aHue;
+    gl_PointSize   = uPointSize;
+    gl_Position    = vertexPosition;
+  });
 
 const char* FRAGMENT_SHADER = MAKE_SHADER(
-varying mediump vec3  vVertexColor;
-varying mediump float vHue;
-uniform lowp  vec4    uColor;
-uniform sampler2D     sTexture1;
-uniform sampler2D     sTexture2;
-uniform lowp vec4     uFadeColor;
-
-void main()
-{
-  mediump vec4 texCol1 = texture2D(sTexture1, gl_PointCoord);
-  mediump vec4 texCol2 = texture2D(sTexture2, gl_PointCoord);
-  gl_FragColor = vec4(vVertexColor, 1.0) * ((texCol1*vHue) + (texCol2*(1.0-vHue)));
-}
-);
+  varying mediump vec3  vVertexColor;
+  varying mediump float vHue;
+  uniform lowp vec4     uColor;
+  uniform sampler2D     sTexture1;
+  uniform sampler2D     sTexture2;
+  uniform lowp vec4     uFadeColor;
+
+  void main() {
+    mediump vec4 texCol1 = texture2D(sTexture1, gl_PointCoord);
+    mediump vec4 texCol2 = texture2D(sTexture2, gl_PointCoord);
+    gl_FragColor         = vec4(vVertexColor, 1.0) * ((texCol1 * vHue) + (texCol2 * (1.0 - vHue)));
+  });
 
 Geometry CreateGeometry()
 {
   // Create vertices
-  struct Vertex { Vector2 position; float hue; };
+  struct Vertex
+  {
+    Vector2 position;
+    float   hue;
+  };
 
   const unsigned int numSides = 20;
-  Vertex polyhedraVertexData[numSides];
-  float angle=0;
-  float sectorAngle = 2.0f * Math::PI / (float) numSides;
+  Vertex             polyhedraVertexData[numSides];
+  float              angle       = 0;
+  float              sectorAngle = 2.0f * Math::PI / (float)numSides;
 
-  for(unsigned int i=0; i<numSides; ++i)
+  for(unsigned int i = 0; i < numSides; ++i)
   {
-    polyhedraVertexData[i].position.x = sinf(angle)*0.5f;
-    polyhedraVertexData[i].position.y = cosf(angle)*0.5f;
-    polyhedraVertexData[i].hue = angle / ( 2.0f * Math::PI);
+    polyhedraVertexData[i].position.x = sinf(angle) * 0.5f;
+    polyhedraVertexData[i].position.y = cosf(angle) * 0.5f;
+    polyhedraVertexData[i].hue        = angle / (2.0f * Math::PI);
     angle += sectorAngle;
   }
 
   Property::Map polyhedraVertexFormat;
   polyhedraVertexFormat["aPosition"] = Property::VECTOR2;
-  polyhedraVertexFormat["aHue"] = Property::FLOAT;
-  VertexBuffer polyhedraVertices = VertexBuffer::New( polyhedraVertexFormat );
-  polyhedraVertices.SetData( polyhedraVertexData, numSides );
+  polyhedraVertexFormat["aHue"]      = Property::FLOAT;
+  VertexBuffer polyhedraVertices     = VertexBuffer::New(polyhedraVertexFormat);
+  polyhedraVertices.SetData(polyhedraVertexData, numSides);
 
   // Create the geometry object
   Geometry polyhedraGeometry = Geometry::New();
-  polyhedraGeometry.AddVertexBuffer( polyhedraVertices );
-  polyhedraGeometry.SetType( Geometry::POINTS );
+  polyhedraGeometry.AddVertexBuffer(polyhedraVertices);
+  polyhedraGeometry.SetType(Geometry::POINTS);
 
   return polyhedraGeometry;
 }
@@ -116,16 +115,15 @@ Geometry CreateGeometry()
 class ExampleController : public ConnectionTracker
 {
 public:
-
   /**
    * The example controller constructor.
    * @param[in] application The application instance
    */
-  ExampleController( Application& application )
-  : mApplication( application )
+  ExampleController(Application& application)
+  : mApplication(application)
   {
     // Connect to the Application's Init signal
-    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+    mApplication.InitSignal().Connect(this, &ExampleController::Create);
   }
 
   /**
@@ -140,7 +138,7 @@ public:
    * Invoked upon creation of application
    * @param[in] application The application instance
    */
-  void Create( Application& application )
+  void Create(Application& application)
   {
     Window window = application.GetWindow();
     window.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
@@ -149,40 +147,40 @@ public:
 
     // The Init signal is received once (only) during the Application lifetime
 
-    Texture texture0 = DemoHelper::LoadTexture( MATERIAL_SAMPLE );
-    Texture texture1 = DemoHelper::LoadTexture( MATERIAL_SAMPLE2 );
+    Texture texture0 = DemoHelper::LoadTexture(MATERIAL_SAMPLE);
+    Texture texture1 = DemoHelper::LoadTexture(MATERIAL_SAMPLE2);
 
-    Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    Shader shader = Shader::New(VERTEX_SHADER, FRAGMENT_SHADER);
 
     TextureSet textureSet = TextureSet::New();
-    textureSet.SetTexture( 0u, texture0 );
-    textureSet.SetTexture( 1u, texture1 );
+    textureSet.SetTexture(0u, texture0);
+    textureSet.SetTexture(1u, texture1);
 
     Geometry geometry = CreateGeometry();
 
-    mRenderer = Renderer::New( geometry, shader );
-    mRenderer.SetTextures( textureSet );
+    mRenderer = Renderer::New(geometry, shader);
+    mRenderer.SetTextures(textureSet);
 
     mMeshActor = Actor::New();
-    mMeshActor.AddRenderer( mRenderer );
-    mMeshActor.SetProperty( Actor::Property::SIZE, Vector2(400, 400) );
+    mMeshActor.AddRenderer(mRenderer);
+    mMeshActor.SetProperty(Actor::Property::SIZE, Vector2(400, 400));
 
-    mMeshActor.RegisterProperty( "uFadeColor", Color::GREEN );
+    mMeshActor.RegisterProperty("uFadeColor", Color::GREEN);
 
-    mRenderer.RegisterProperty( "uFadeColor", Color::MAGENTA );
-    mRenderer.RegisterProperty( "uPointSize", 80.0f );
-    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+    mRenderer.RegisterProperty("uFadeColor", Color::MAGENTA);
+    mRenderer.RegisterProperty("uPointSize", 80.0f);
+    mRenderer.SetProperty(Renderer::Property::DEPTH_INDEX, 0);
 
-    mMeshActor.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
-    mMeshActor.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
-    window.Add( mMeshActor );
+    mMeshActor.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
+    mMeshActor.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);
+    window.Add(mMeshActor);
 
-    Animation  animation = Animation::New(15);
+    Animation animation = Animation::New(15);
     KeyFrames keyFrames = KeyFrames::New();
     keyFrames.Add(0.0f, Vector4::ZERO);
-    keyFrames.Add(1.0f, Vector4( 1.0f, 0.0f, 1.0f, 1.0f ));
+    keyFrames.Add(1.0f, Vector4(1.0f, 0.0f, 1.0f, 1.0f));
 
-    animation.AnimateBy( Property(mMeshActor, Actor::Property::ORIENTATION), Quaternion(Degree(360), Vector3::ZAXIS) );
+    animation.AnimateBy(Property(mMeshActor, Actor::Property::ORIENTATION), Quaternion(Degree(360), Vector3::ZAXIS));
 
     animation.SetLooping(true);
     animation.Play();
@@ -194,7 +192,7 @@ public:
    * Invoked whenever the quit button is clicked
    * @param[in] button the quit button
    */
-  bool OnQuitButtonClicked( Toolkit::Button button )
+  bool OnQuitButtonClicked(Toolkit::Button button)
   {
     // quit the application
     mApplication.Quit();
@@ -205,7 +203,7 @@ public:
   {
     if(event.GetState() == KeyEvent::DOWN)
     {
-      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      if(IsKey(event, Dali::DALI_KEY_ESCAPE) || IsKey(event, Dali::DALI_KEY_BACK))
       {
         mApplication.Quit();
       }
@@ -213,9 +211,8 @@ public:
   }
 
 private:
-
-  Application&  mApplication;                             ///< Application instance
-  Vector3 mWindowSize;                                     ///< The size of the window
+  Application& mApplication; ///< Application instance
+  Vector3      mWindowSize;  ///< The size of the window
 
   Renderer mRenderer;
   Actor    mMeshActor;
@@ -224,10 +221,10 @@ private:
   Timer    mChangeImageTimer;
 };
 
-int DALI_EXPORT_API main( int argc, char **argv )
+int DALI_EXPORT_API main(int argc, char** argv)
 {
-  Application application = Application::New( &argc, &argv );
-  ExampleController test( application );
+  Application       application = Application::New(&argc, &argv);
+  ExampleController test(application);
   application.MainLoop();
   return 0;
 }