[x3d-public] X3D meeting minutes 20 AUG 2021, C C++ C# and Mantis MetadataDate

John Carlson yottzumm at gmail.com
Thu Aug 26 14:41:14 PDT 2021


19777-{3,4,5} Examples source code from the standards are ready to check 
in here, and will be checked into sourceforge:

x3d-code/www.web3d.org/x3d/languages/c/Examples
x3d-code/www.web3d.org/x3d/languages/cpp/Examples
x3d-code/www.web3d.org/x3d/languages/csharp/Examples

Note that we do not have up-to-date .h files as a separate deliverable 
yet.  The .h files are currently embedded in the standard HTML.

I hope I explained myself well enough.

John

On 8/26/21 4:30 PM, John Carlson wrote:
>
> Myeong,
>
> Thanks for your efforts on the C/C#/C++ standards!
>
> 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: https://github.com/Web3DConsortium/X3D 
> (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:
>
> ./ISO-IEC19777/ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-WD
> ./ISO-IEC19777/ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-CD
> ./ISO-IEC19777/ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-CD
> ./ISO-IEC19777/ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-WD
> ./ISO-IEC19777/ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-CD
> ./ISO-IEC19777/ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-WD
>
> ( Please confirm that the WD folders are correct).
>
> These are the original folders that where already there that are moved 
> out of the way.
>
> ./ISO-IEC19777-4/ISO-IEC19777-4v3.3/ISO-IEC19777-4v3.3-WD-original
> ./ISO-IEC19777-3/ISO-IEC19777-3v3.3/ISO-IEC19777-3v3.3-WD-original
> ./ISO-IEC19777-5/ISO-IEC19777-5v3.3/ISO-IEC19777-5v3.3-WD-original
>
> 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.
>
> I will enter a Mantis ticket for these changes.
>
> ===========================================================
>
> 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: 
> http://www.web3d.org/mailman/listinfo/x3d-public_web3d.org
>
> Issues with source code artifacts should be can be recorded here: 
> https://sourceforge.net/p/x3d/discussion/
>
> Source code artifacts should go here in addition: 
> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/languages/ 
> 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.
>
> If you have any open questions, please post to the x3d-public list 
> (respond to this email).
>
> I don't believe source code changes require Mantis.
>
> John
>
> On 8/26/21 9:34 AM, Brutzman, Donald (Don) (CIV) wrote:
>>
>> Again: it would be useful to have to have a design page that 
>> discussed programming patterns and open issues.
>>
>> Again: GitHub is master version, being aware that differences exist 
>> but are not identified isn’t very useful.
>>
>> 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.
>>
>> Thanks for all efforts, hopefully they can become productive and 
>> fruitful by working deliberately together.
>>
>> all the best, Don
>> -- 
>> Don Brutzman  Naval Postgraduate School, Code USW/Br brutzman at nps.edu
>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   
>> +1.831.656.2149
>> X3D graphics, virtual worlds, navy robotics 
>> http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman>
>>
>> *From: *John Carlson <mailto:yottzumm at gmail.com>
>> *Sent: *Friday, August 20, 2021 12:36 PM
>> *To: *Brutzman, Donald (Don) (CIV) <mailto:brutzman at nps.edu>; 
>> x3d-public at web3d.org <mailto:x3d-public at web3d.org>; Myeong Won Lee 
>> <mailto:myeongwonlee at gmail.com>; GPU Group <mailto:gpugroup at gmail.com>
>> *Subject: *Re: [x3d-public] X3D meeting minutes 20 AUG 2021, C C++ C# 
>> and Mantis MetadataDate
>>
>> NPS WARNING: *external sender* verify before acting.
>>
>> Don, Myeong, Doug,
>>
>> I noticed that there are no virtual methods in the C++ spec SAI I got 
>> (examples, yes, except for ~SAIExample5()) on drive.google.com.  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. https://www.geeksforgeeks.org/virtual-function-cpp/ 
>> <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> 
>> 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.
>>
>> I think it would be useful to have Doug Sanden review the abstract 
>> and concrete class and structs before making big decisions.
>>
>> 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?
>>
>> 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).
>>
>> I'm glad I am reviewing this!  We'll see if anything else pops into 
>> my head after I send the message!
>>
>> Thanks,
>>
>> John
>>
>> On 8/20/21 1:46 PM, Brutzman, Donald (Don) (CIV) wrote:
>>
>>     Attendees John Carlson, Vince Marchetti, Dick Puk, Don Brutzman
>>
>>     1.Very useful discussion today, we reviewed proposed language
>>     bindings
>>
>>      1. 19755- 3, C
>>      2. 19755- 4, C++
>>      3. 19755- 5, C#
>>
>>     We discussed whether special treatment is deserved for exposing
>>     these draft specifications.  22 Web3D members have access to them
>>     now.
>>
>>     Language bindings need compilable interfaces for ISO, and at
>>     least two implementations for Web3D.
>>
>>     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.
>>
>>     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.
>>
>>     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.
>>
>>      1. GCC, the GNU Compiler Collection https://gcc.gnu.org
>>         <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>
>>
>>      2. https://stackoverflow.com/questions/26078437/why-does-gcc-support-java-and-not-c-sharp
>>         <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>
>>
>>
>>     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.
>>
>>     We are concerned about personnel availability, but will keep
>>     working on it step by step.
>>
>>
>>     We will welcome all help and participation as the work proceeds.
>>
>>     2.Mantis issue progress is persevering steadily each week.
>>
>>     1.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:
>>
>>     <MetadataDouble name=”time”                  value=“0.0”
>>     reference=”Unix reference of time with start at 1 JAN 1970”/>
>>
>>     <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”/>
>>
>>     Any scene of examples would be fully detailed and
>>     cross-referenced for clarity.
>>
>>     Mantis 1218: 07.2.4 MetadataDate - New node type, or new data type
>>
>>     https://www.web3d.org/member-only/mantis/view.php?id=1218
>>     <https://www.web3d.org/member-only/mantis/view.php?id=1218>
>>
>>     2.Other mantis issues are being fixed and addresses each week. 
>>     Membership has value.
>>
>>     https://www.web3d.org/member-only/mantis/view_all_bug_page.php
>>     <https://www.web3d.org/member-only/mantis/view_all_bug_page.php>
>>
>>     Thanks everyone for a worthy effort today.  Have fun with X3D!  8)
>>
>>     *From:* Brutzman, Donald (Don) (CIV)
>>     *Sent:* Friday, August 20, 2021 12:27 AM
>>     *To:* x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>>     *Cc:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
>>     <mailto:brutzman at nps.edu>
>>     *Subject:* X3D meeting agenda 20 AUG 2021, C C++ C# and Mantis
>>
>>     Regular weekly call once again this week, Friday 10-1100 Pacific
>>     on Web3D conference line.
>>
>>     We will review our approach to C C++ C# encodings and also
>>     ongoing Mantis progress. Additional topics welcome.
>>
>>     all the best, Don
>>
>>     -- 
>>
>>     Don Brutzman  Naval Postgraduate School, Code USW/Br
>>     brutzman at nps.edu <mailto:brutzman at nps.edu>
>>
>>     Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA  
>>     +1.831.656.2149
>>
>>     X3D graphics, virtual worlds, navy robotics
>>     http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman>
>>
>>
>>
>>     _______________________________________________
>>
>>     x3d-public mailing list
>>
>>     x3d-public at web3d.org  <mailto:x3d-public at web3d.org>
>>
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org  <http://web3d.org/mailman/listinfo/x3d-public_web3d.org>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20210826/5ab35b39/attachment-0001.html>


More information about the x3d-public mailing list