<div dir="auto">Don suggested a meeting for checking in the new 19777-{3,4,5} working drafts. If people are interested, send me times when you are available. Dick, Don, since you are the maintainers, one of you should be there—I think the Mantis currently says Don. Myeong or I can make zips available. I think they may be checked into my repository.</div><div dir="auto"><br></div><div dir="auto">I do not know if more review time is necessary before checking in? I for one have not done much reviewing beyond structure. One may want to search through the folders to see if the string “Java” is found within the c/c++/c# working draft files. That is, do an explorer and/or grep search.</div><div dir="auto"><br></div><div dir="auto">From what I saw of the .h files, it looks quite excellent. We can start with any code generation. If Myeong doesn’t give us the .h files and we can’t otherwise scrape the HTML or WD, perhaps code generation of SAI from X3DUOM is indicated? We have done this for Python and Java. I don’t know if Myeong is code generating the .h code or not. I’ve laid out a couple of scenarios for stylesheets, but I have not worked on making these a reality yet. It would probably be good for me to lay out the alternatives in a presentation so we can choose a path forward which is most maintainable for second and third parties.</div><div dir="auto"><br></div><div dir="auto">Nicholas, does your team intend to provide a full library beyond the interface? If so, will they be working on an implementation stylesheet? I guess in C/C++ the interface is separate from the implementation, so it would be possible to have coordinated implementation?</div><div dir="auto"><br></div><div dir="auto">Could someone who has used Script nodes with c,c++,c# fill me in on how to do it?</div><div dir="auto"><br></div><div dir="auto">John</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Aug 27, 2021 at 8:50 AM Myeong Won Lee <<a href="mailto:myeongwonlee@gmail.com">myeongwonlee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="ltr"><div dir="ltr">Dear John,<br><br>Thank you for your efforts in setting up the GitHub repository.<br><br>In the folders, I think that the "CD" folders may not be necessary because we have restarted with WDs and the CDs are old versions of the WDs.<br>I submitted the CDs last year, but they were not approved as CD texts, and so I resubmitted them as WDs.<br>We should work on the WD texts.<br>How about deleting the CD folders?<br>In addition, if WD-originals are old versions, it would be OK to delete them.<br><br>In summary, I think that the folders should be as follows:<br><br>./ISO-IEC19777/ISO-IEC19777-3/ISO-IEC19777-3v3.3-WD<br>./ISO-IEC19777/ISO-IEC19777-4/ISO-IEC19777-4v3.3-WD<br>./ISO-IEC19777/ISO-IEC19777-5/ISO-IEC19777-5v3.3-WD<br></div><div dir="ltr"><br></div><div>Sincerely,</div><div><br></div><div>Myeong</div></div><div dir="ltr"><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Aug 27, 2021 at 6:30 AM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">
<div>
<p>Myeong,</p>
<p>Thanks for your efforts on the C/C#/C++ standards!</p>
<p>My understanding from Don is that we want the current WD versions
of the 19777-3, 19777-4 and 19777-5 standards checked into GitHub,
somewhere below this folder:
<a href="https://github.com/Web3DConsortium/X3D" target="_blank">https://github.com/Web3DConsortium/X3D</a> (If you need assistance,
let me know, it's quite confusing. We'll probably have to do
things like rename the folders once unpacked from the zips and
move them from). Issues with the standards should go into Mantis.
Google Drive/Docs, while important for private sharing, are not
suitable for group editing of standards. GitHub has adequate
protections in the X3D repository. With your permission, I will
check your Google shared zips into GitHub unpacked. Probably in
the folders here that you identify:</p>
<p>./ISO-IEC19777/ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-WD<br>
./ISO-IEC19777/ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-CD<br>
./ISO-IEC19777/ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-CD<br>
./ISO-IEC19777/ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-WD<br>
./ISO-IEC19777/ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-CD<br>
./ISO-IEC19777/ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-WD</p>
<p>( Please confirm that the WD folders are correct).</p>
<p>These are the original folders that where already there that are
moved out of the way.<br>
</p>
<p>./ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-WD-original<br>
./ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-WD-original<br>
./ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-WD-original</p>
<p>I currently all these changes ready for a git add, commit, push.
I have done 1) ready and a little bit of aiming. I need approval
to fire.</p>
<p>I will enter a Mantis ticket for these changes.<br>
</p>
<p>===========================================================<br>
</p>
<p>Secondly, according to Don, we need to move discussions to the
x3d-public mailing list. If issues are sensitive, then there's
the x3d mailing list. Here's how to subscribe to x3d-public:
<a href="http://www.web3d.org/mailman/listinfo/x3d-public_web3d.org" target="_blank">http://www.web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</p>
<p>Issues with source code artifacts should be can be recorded here:
<a href="https://sourceforge.net/p/x3d/discussion/" target="_blank">https://sourceforge.net/p/x3d/discussion/</a></p>
<p>Source code artifacts should go here in addition:
<a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/languages/" target="_blank">https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/languages/</a>
I can facilitate uploads to there. Myeong, with your permission,
I will archive the old code (many months old) to "legacy" under
the main x3d-code folder.</p>
<p>If you have any open questions, please post to the x3d-public
list (respond to this email).</p>
<p>I don't believe source code changes require Mantis.<br>
</p>
<p>John<br>
</p>
<div>On 8/26/21 9:34 AM, Brutzman, Donald
(Don) (CIV) wrote:<br>
</div>
<blockquote type="cite">
<div>
<p class="MsoNormal">Again: it would be useful to have to have a
design page that discussed programming patterns and open
issues.</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Again: GitHub is master version, being
aware that differences exist but are not identified isn’t very
useful.</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Again: Hoping we can “get on the good foot”
in how this effort is pursued. This is how the Java, JSON,
Python and Turtle language bindings built towards consensus
and were all successfully accomplished.</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Thanks for all efforts, hopefully they can
become productive and fruitful by working deliberately
together.</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">all the best, Don<br>
<span style="font-family:"Courier New"">-- <br>
Don Brutzman Naval Postgraduate School, Code USW/Br
<a href="mailto:brutzman@nps.edu" target="_blank" style="font-family:"Courier New"">brutzman@nps.edu</a><br>
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA
+1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" target="_blank" style="font-family:"Courier New"">
http://faculty.nps.edu/brutzman</a></span><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border-style:solid none none;border-top-width:1pt;padding:3pt 0in 0in;border-top-color:rgb(225,225,225)">
<p class="MsoNormal" style="border:none;padding:0in"><b>From:
</b><a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a><br>
<b>Sent: </b>Friday, August 20, 2021 12:36 PM<br>
<b>To: </b><a href="mailto:brutzman@nps.edu" target="_blank">Brutzman, Donald (Don) (CIV)</a>; <a href="mailto:x3d-public@web3d.org" target="_blank">
x3d-public@web3d.org</a>; <a href="mailto:myeongwonlee@gmail.com" target="_blank">Myeong Won Lee</a>;
<a href="mailto:gpugroup@gmail.com" target="_blank">GPU
Group</a><br>
<b>Subject: </b>Re: [x3d-public] X3D meeting minutes 20 AUG
2021, C C++ C# and Mantis MetadataDate</p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border:1pt solid rgb(0,70,121);padding:2pt">
<p class="MsoNormal" style="line-height:12pt;background-color:rgb(0,70,121)"><span style="font-size:10pt;color:yellow">NPS WARNING:
*external sender* verify before acting.<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p>Don, Myeong, Doug,</p>
<p>I noticed that there are no virtual methods in the C++ spec
SAI I got (examples, yes, except for ~SAIExample5()) on
<a href="http://drive.google.com" target="_blank">drive.google.com</a>. I do not think they are necessary, but
may be useful when defining subclasses for people who want
to subclass from the SAI abstract and concrete nodes. <a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.geeksforgeeks.org%2Fvirtual-function-cpp%2F&data=04%7C01%7Cbrutzman%40nps.edu%7C4e6ee194cc544357635908d964118d12%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637650850010851004%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=EkRmxJLy9eZ1jjBqCZ%2FS99OiG9B9NcBGWff6ixidzNA%3D&reserved=0" target="_blank">
https://www.geeksforgeeks.org/virtual-function-cpp/</a>
Note that most methods are virtual in Java, without the
keyword. I think virtual methods are slower than regular
methods, last I heard. But I'm pretty sure all destructors
should be virtual? I've forgotten. Some discussion whether
destructors should be present in the spec is welcome. The
virtual destructor ensures that the superclass destructor is
not called.</p>
<p>I think it would be useful to have Doug Sanden review the
abstract and concrete class and structs before making big
decisions.</p>
<p>I am also unsure why the first parameter to many C function
pointer declarations is void* instead of passing a pointer
to a struct type?</p>
<p>In all cases, C/C++/C# it might be useful for setter
functions and members to return this or *this, instead of
void. We need set functions to return this for creating
builders I'm fairly sure. (In C SAI, the first parameter is
called this, it's not a keyword that I know of).</p>
<p>I'm glad I am reviewing this! We'll see if anything else
pops into my head after I send the message!</p>
<p>Thanks,</p>
<p>John</p>
<div>
<p class="MsoNormal">On 8/20/21 1:46 PM, Brutzman, Donald
(Don) (CIV) wrote:<u></u><u></u></p>
</div>
<blockquote style="margin-top:5pt;margin-bottom:5pt">
<p class="MsoNormal">Attendees John Carlson, Vince
Marchetti, Dick Puk, Don Brutzman<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p style="margin-left:0.25in">
<span>1.<span style="font-style:normal;font-variant-caps:normal;font-weight:normal;font-stretch:normal;font-size:7pt;line-height:normal;font-family:"Times New Roman"">
</span></span>Very useful discussion
today, we reviewed proposed language bindings<u></u><u></u></p>
<ol style="margin-top:0in" type="1" start="1">
<li style="margin-left:0in">19755-
3, C<u></u><u></u></li>
<li style="margin-left:0in">19755-
4, C++<u></u><u></u></li>
<li style="margin-left:0in">19755-
5, C#<u></u><u></u></li>
</ol>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">We discussed whether special treatment
is deserved for exposing these draft specifications. 22
Web3D members have access to them now.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Language bindings need compilable
interfaces for ISO, and at least two implementations for
Web3D.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Close inspection of each shows that a
handful of example programs are available for test
development, and could be used as basis for
X3dToCCppCsharp.xslt conversion stylesheet.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Close inspection of detailed abstract
interfaces, and detailed node/statement implementations
for libraries are available (with some omissions). Each
appears quite similar to the others. Regeneration via
X3DUOM of compilable “header” or interface files matching
the source code in the HTML is possible.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">C and C++ language compilation is
easily possible using gcc compiler. Compilation of C# is
not so clear, some open-source implementations are
available. Once initial compilation of headers is
accomplished, further scrutiny and possible evolution of
design patterns would be straightforward. We’ll use gcc
on the next round since it is part of our build
infrastructure already.<u></u><u></u></p>
<ol style="margin-top:0in" type="1" start="1">
<li style="margin-left:0in">GCC, the
GNU Compiler Collection
<a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgcc.gnu.org%2F&data=04%7C01%7Cbrutzman%40nps.edu%7C4e6ee194cc544357635908d964118d12%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637650850010860960%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=InQmxP%2BpSNqMvgzuLehZ1WsMAhVzTsElQ6bPWfUJeqw%3D&reserved=0" target="_blank">
https://gcc.gnu.org</a> <u></u><u></u></li>
<li style="margin-left:0in"><a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstackoverflow.com%2Fquestions%2F26078437%2Fwhy-does-gcc-support-java-and-not-c-sharp&data=04%7C01%7Cbrutzman%40nps.edu%7C4e6ee194cc544357635908d964118d12%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637650850010860960%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=ID4Gzh%2Bw9bW80EYdfPZCPLjH1m%2BlKDZnZGINmJjcyHA%3D&reserved=0" target="_blank">https://stackoverflow.com/questions/26078437/why-does-gcc-support-java-and-not-c-sharp</a>
<u></u><u></u></li>
</ol>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">We have enough that immediate sharing
of shared specifications can be deferred until broader
discussion is warranted. Sharing of generated code will
help, and that does not have to be restricted.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">We are concerned about personnel
availability, but will keep working on it step by step.<u></u><u></u></p>
<p class="MsoNormal"><br>
We will welcome all help and participation as the work
proceeds.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p style="margin-left:0.25in">
<span>2.<span style="font-style:normal;font-variant-caps:normal;font-weight:normal;font-stretch:normal;font-size:7pt;line-height:normal;font-family:"Times New Roman"">
</span></span>Mantis issue progress is
persevering steadily each week.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p style="margin-left:0.75in">
<span>1.<span style="font-style:normal;font-variant-caps:normal;font-weight:normal;font-stretch:normal;font-size:7pt;line-height:normal;font-family:"Times New Roman"">
</span></span>Mantis 1218 for creating a
MetadataDate or MetadataTime node needs to be deferred to
X3D4.1. Meanwhile we might an example scene demonstrating
how to do such representations with existing nodes,
workably across all forms of X3D. E.g. pseudocode
examples:<u></u><u></u></p>
<p style="margin-left:0.75in"><MetadataDouble
name=”time” value=“0.0” reference=”Unix
reference of time with start at 1 JAN 1970”/></p>
<p style="margin-left:0.75in"><MetadataString
name=”TuesdayLunch” value=“24-AUG-2021-1200-pacific”
reference=”XSD, XML Schema Definition”/>
<MetadataString name=”ThankGoodnessItsMonday”
value=“23-AUG-2021-1200-pacific” reference=”ISO 8601 Time
standard”/> </p>
<p style="margin-left:0.75in">Any
scene of examples would be fully detailed and
cross-referenced for clarity.</p>
<p style="margin-left:0.75in"><span style="font-size:10pt;font-family:Verdana,sans-serif;background-color:rgb(243,243,243);color:black">Mantis
1218: 07.2.4 MetadataDate - New node type, or new data
type</span></p>
<p style="margin-left:0.75in"><a href="https://www.web3d.org/member-only/mantis/view.php?id=1218" target="_blank">https://www.web3d.org/member-only/mantis/view.php?id=1218</a>
</p>
<p style="margin-left:0.75in"> </p>
<p style="margin-left:0.75in">
<span>2.<span style="font-style:normal;font-variant-caps:normal;font-weight:normal;font-stretch:normal;font-size:7pt;line-height:normal;font-family:"Times New Roman"">
</span></span>Other mantis issues are
being fixed and addresses each week. Membership has
value.<u></u><u></u></p>
<p style="margin-left:0.75in"><a href="https://www.web3d.org/member-only/mantis/view_all_bug_page.php" target="_blank">https://www.web3d.org/member-only/mantis/view_all_bug_page.php</a>
</p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Thanks everyone for a worthy effort
today. Have fun with X3D! 8)<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div style="border-style:solid none none;border-top-width:1pt;padding:3pt 0in 0in;border-top-color:rgb(225,225,225)">
<p class="MsoNormal"><b>From:</b> Brutzman, Donald (Don)
(CIV) <br>
<b>Sent:</b> Friday, August 20, 2021 12:27 AM<br>
<b>To:</b> <a href="mailto:x3d-public@web3d.org" target="_blank"><span style="color:rgb(5,99,193)">x3d-public@web3d.org</span></a><br>
<b>Cc:</b> Brutzman, Donald (Don) (CIV) <a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:rgb(5,99,193)"><brutzman@nps.edu></span></a><br>
<b>Subject:</b> X3D meeting agenda 20 AUG 2021, C C++
C# and Mantis<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Regular weekly call once again this
week, Friday 10-1100 Pacific on Web3D conference line.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">We will review our approach to C C++ C#
encodings and also ongoing Mantis progress. Additional
topics welcome.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">all the best, Don<u></u><u></u></p>
<p class="MsoNormal"><span>-- </span>
<u></u><u></u></p>
<p class="MsoNormal"><span>Don Brutzman Naval Postgraduate School, Code
USW/Br
<a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:rgb(5,99,193)">brutzman@nps.edu</span></a></span><u></u><u></u></p>
<p class="MsoNormal"><span>Watkins 270, MOVES Institute, Monterey CA
93943-5000 USA +1.831.656.2149</span><u></u><u></u></p>
<p class="MsoNormal"><span>X3D graphics, virtual worlds, navy robotics
<a href="http://faculty.nps.edu/brutzman" target="_blank"><span style="color:rgb(5,99,193)">http://faculty.nps.edu/brutzman</span></a></span><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal"><br>
<br>
<u></u><u></u></p>
<pre style="font-family:monospace">_______________________________________________</pre>
<pre style="font-family:monospace">x3d-public mailing list</pre>
<pre style="font-family:monospace"><a href="mailto:x3d-public@web3d.org" target="_blank" style="font-family:monospace">x3d-public@web3d.org</a></pre>
</blockquote>
</div>
<pre style="margin-right:0.5in;margin-bottom:5pt;margin-left:0.5in;font-family:monospace"><a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" target="_blank" style="font-family:monospace">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a></pre>
<p class="MsoNormal"><span style="font-size:10pt;font-family:"Courier New""><u style="font-family:"Courier New""></u> <u style="font-family:"Courier New""></u></span></p>
</div>
</blockquote>
</div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:12pt"><span lang="EN-US"><font face="verdana, sans-serif" size="1" style="font-family:verdana,sans-serif;color:rgb(0,0,0)">Myeong Won Lee, PhD, Professor<br>
Faculty of Computer Science, U. of Suwon <br>
Hwaseong, Gyeonggi-do, 18323 Korea <br>E-mail) <a href="mailto:myeongwonlee@gmail.com" target="_blank" style="font-family:verdana,sans-serif">myeongwonlee@gmail.com</a>, <a href="mailto:mwlee@suwon.ac.kr" target="_blank" style="font-family:verdana,sans-serif">mwlee@suwon.ac.kr</a></font><font face="Cambria, serif" style="font-family:Cambria,serif;color:rgb(0,0,0)"><span style="font-family:Cambria,serif"></span></font></span></p></div></div></div></div></div></div></div></div></div>
</blockquote></div></div>