<html>
 <head>
  <meta content="width=device-width" name="viewport">
  <meta content="width=device-width" name="viewport">
  <meta content="width=device-width" name="viewport">
  <meta name="viewport" content="width=device-width">
  <meta http-equiv="Content-Type" content="text/vnd.ui.insecure+html;charset=utf-8">
 </head>
 <body style="overflow-wrap:break-word; word-break: break-word;overflow-wrap:break-word; word-break: break-word;overflow-wrap:break-word; word-break: break-word;overflow-wrap:break-word; word-break: break-word;"><div class="mail_android_message" style="line-height: 1; padding: 0.5em">Maybe<br/><br/>--<br/>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.</div><div class="mail_android_quote" style="line-height: 1; padding: 0.3em"><html><body>Am 21.12.22, 21:54 schrieb Christoph Valentin <christoph.valentin@gmx.at>:</body></html><blockquote class="gmail_quote" style="margin: 0.8ex 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

  <div class="mail_android_message" style="line-height: 1; padding: 0.5em">
   Snd the outer LoadSensor would need a field
   <br>
   <br>'SFBool recursive'
   <br>
   <br>--
   <br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.
  </div>
  <div class="mail_android_quote" style="line-height: 1; padding: 0.3em">
   Am 21.12.22, 21:50 schrieb Christoph Valentin <christoph.valentin@gmx.at>:
   <blockquote class="gmail_quote" style="margin: 0.8ex 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
    <div class="mail_android_message" style="line-height: 1; padding: 0.5em">
      Just the inner LoadSensor would need a field
     <br>'SFBool forwardIsLoaded',
     <br>
     <br>that's it
     <br>
     <br>--
     <br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.
    </div>
    <div class="mail_android_quote" style="line-height: 1; padding: 0.3em">
      Am 21.12.22, 21:43 schrieb Christoph Valentin <christoph.valentin@gmx.at>:
     <blockquote class="gmail_quote" style="margin: 0.8ex 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
      <div class="mail_android_message" style="line-height: 1; padding: 0.5em">
        Yes, but what I mean is that the "Do something after LSForInner fires" will be done by the outer LoadSensor (e.g. just enabling the outer LoadSensor)
       <br>
       <br>Kr,
       <br>CV
       <br>
       <br>--
       <br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.
      </div>
      <div class="mail_android_quote" style="line-height: 1; padding: 0.3em">
        Am 21.12.22, 21:27 schrieb Andreas Plesch <andreasplesch@gmail.com>:
       <blockquote class="gmail_quote" style="margin: 0.8ex 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
         Hi Christoph,
        <br>
        <br> I think the idea could be sketched as:
        <br>
        <br> <Scene>
        <br> <Inline Outer/>
        <br> <IMPORT LSForInner />
        <br> Do something after LSForInner fires
        <br> ..
        <br>
        <br> Inline Outer:
        <br> <Scene>
        <br> <LoadSensor DEF="LSForInner">
        <br> <Inline Inner/>
        <br> </>
        <br> <EXPORT LSForInner/>
        <br> ..
        <br>
        <br> That flexibility would favor the option to generate the event before
        <br> downloading of inner content. The potential downside is that it
        <br> assumes that the outer Inline has such an exported LoadSensor which
        <br> may not be the case or even be under the author's control. Also, for
        <br> more complex scenes it can become a lot of logic for the author to
        <br> deal with.
        <br>
        <br> In any case, to avoid surprises with that option it would be even more
        <br> important to point out in the spec. when the isLoaded event is
        <br> generated, eg. that nested LoadSensors may be needed.
        <br>
        <br> -Andreas
        <br>
        <br> On Wed, Dec 21, 2022 at 2:42 PM Christoph Valentin
        <br> <christoph.valentin@gmx.at> wrote:
        <br> >
        <br> > Hi Andreas,
        <br> >
        <br> > Just one neuron firing now: what about leaving the decision to the author?
        <br> >
        <br> > Somehow "nesting" the LoadSensor. One LoadSensor in the scene, reporting about the inline. Another LoadSensor in the inline, reporting about the second level inline. And so on.
        <br> >
        <br> > --
        <br> > Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.
        <br> > Am 21.12.22, 17:51 schrieb Andreas Plesch <andreasplesch@gmail.com>:
        <br> >>
        <br> >> It is useful to be notified after an Inline has completed loading.
        <br> >> This is especially true for external access to the scene if the Inline
        <br> >> has exports (or dom style access is used).
        <br> >> A LoadSensor generates such an event:
        <br> >>
        <br> >> <a href="https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#LoadSensor">https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#LoadSensor</a>
        <br> >>
        <br> >> "The isLoaded field generates events when loading of the LoadSensor's
        <br> >> children has completed."
        <br> >>
        <br> >> However, in the case that the Inline contains another Inline itself a
        <br> >> question came up. Is loading considered complete when the outer Inline
        <br> >> xml/json/.. is completely downloaded but still has only a url
        <br> >> reference to the inner Inline ? That typically would happen before
        <br> >> also the inner Inline is completely downloaded. Or should the event be
        <br> >> generated only after the inner Inline (and all of its content) is also
        <br> >> completely downloaded ?
        <br> >>
        <br> >> The second option is more useful, especially for web use where loading
        <br> >> generally occurs asynchronously and such events are often used to
        <br> >> initiate processing of downloaded content.
        <br> >>
        <br> >> For generic X3D use, one could imagine a situation where a LoadSensor
        <br> >> triggers something which assumes that the scene is fully rendered
        <br> >> before an Inline is actually rendered.
        <br> >>
        <br> >> It is also related to how EXPORT/IMPORT works. One could probably
        <br> >> construct a situation where a LoadSensor triggers access to an
        <br> >> EXPORTed node from an inner Inline before it is available.
        <br> >>
        <br> >> Is a tightening of the language necessary ? Perhaps there is already a
        <br> >> more precise definition of 'loading' in the spec. somewhere else ?
        <br> >>
        <br> >> -Andreas
        <br> >> --
        <br> >> Andreas Plesch
        <br> >> Waltham, MA 02453
        <br> >>
        <br> >> _______________________________________________
        <br> >> x3d-public mailing list
        <br> >> x3d-public@web3d.org
        <br> >> <a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a>
        <br>
        <br>
        <br>
        <br> --
        <br> Andreas Plesch
        <br> Waltham, MA 02453
        <br>
       </blockquote>
      </div> _______________________________________________ x3d-public mailing list x3d-public@web3d.org http://web3d.org/mailman/listinfo/x3d-public_web3d.org
     </blockquote>
    </div> _______________________________________________ x3d-public mailing list x3d-public@web3d.org http://web3d.org/mailman/listinfo/x3d-public_web3d.org
   </blockquote>
  </div> _______________________________________________ x3d-public mailing list x3d-public@web3d.org http://web3d.org/mailman/listinfo/x3d-public_web3d.org
 </blockquote></div></body>
</html>