[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