~holger-seelig/titania/3.0

« back to all changes in this revision

Viewing changes to libtitania-x3d/Titania/X3D/JavaScript/SpiderMonkey/jsContext.cpp

  • Committer: Holger Seelig
  • Date: 2013-08-05 19:51:24 UTC
  • Revision ID: holger.seelig@yahoo.de-20130805195124-weg56pajdi69mt1j
Test implementation of parallel load of images.

Show diffs side-by-side

added added

removed removed

Lines of Context:
72
72
jsContext::jsContext (Script* script, const std::string & ecmascript, const basic::uri & uri, size_t index) :
73
73
                 X3DBaseNode (script -> getBrowser (), script -> getExecutionContext ()),
74
74
        X3DJavaScriptContext (),
75
 
                X3DUrlObject (),
76
75
                     runtime (NULL),
77
76
                     context (NULL),
78
77
                      global (NULL),
91
90
        setComponent ("Browser");
92
91
        setTypeName ("jsContext");
93
92
 
94
 
        addField (inputOutput, "url", url ());
95
 
 
96
 
        setWorldURL (uri);
97
 
 
98
93
        // Get a JS runtime.
99
94
        runtime = JS_NewRuntime (64 * 1024 * 1024); // 64 MB runtime memory
100
95
 
144
139
jsContext::initialize ()
145
140
{
146
141
        X3DJavaScriptContext::initialize ();
147
 
        X3DUrlObject::initialize ();
148
142
 
149
143
        set_initialized ();
150
144
}
379
373
        {
380
374
                // Resolve uri
381
375
 
382
 
                basic::uri resolvedURL = transformUri (worldURL .back (), uri);
 
376
                basic::uri resolvedURL = script -> transformUri (worldURL .back (), uri);
383
377
 
384
378
                // Get cached result
385
379
 
393
387
 
394
388
                // Load document
395
389
 
396
 
                std::string document = loadDocument (resolvedURL);
 
390
                std::string document = script -> loadDocument (resolvedURL);
397
391
 
398
392
                // Evaluate script
399
393
 
643
637
 
644
638
        assert (objects .size () == 0);
645
639
 
646
 
        X3DUrlObject::dispose ();
647
640
        X3DJavaScriptContext::dispose ();
648
641
}
649
642