1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/* DreemGL is a collaboration between Teeming Society & Samsung Electronics, sponsored by Samsung and others.
   Copyright 2015-2016 Teeming Society. Licensed under the Apache License, Version 2.0 (the "License"); You may not use this file except in compliance with the License.
   You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and limitations under the License.*/

// dali wrapper file, adapted from dali example applications.
// (For example: dali-nodejs/dali-toolkit/node-addon/line-mesh.js).

define.class(function(require, exports){

        // internal, Initialize and show the dali screen
        this.atConstructor = function(width, height, name) {
                width = width || 1920
                height = height || 1080
                name = name || 'dreemgl'

                this.dali_initialize(width, height, name);
        };

        // internal, Initialize dali/nodejs and display the screen
        this.dali_initialize = function(width, height, name) {
                if (this.dali) {
                        console.warn('warning: dali_wrapper already initialized');
                        return;
                }

                this.window= {
                        x:0,
                        y:0,
                        width:width,
                        height: height,
                        transparent: false,
                        name: name
                };

                this.viewMode={
                        'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
                        'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
                };

                this.options= {
                        'window': this.window,
                        'view-mode': this.viewMode,
                }

                // Dali/nodejs interface (nodejs package at top-level of dreemgl repository)
                //TODO Use a fixed location to locate dali code

                //TODO FIX absolute path and use of require_builtin
                this.dali = define.require('/home/dali/teem/src/dreemgl/Release/dali')(this.options);


            // Application
            this.daliApp = {};
    }

    // Application
    this.daliApp = {};

    // Pass the dali object to createMeshActor
    this.daliApp.createMeshActor = function(dali, daliapp) {
      daliapp.actors(dali);
    };


});