Replies: 5 comments 6 replies
-
|
I think I got PSR records working the correct way. It reads and writes the data in my Psr records but since they are mostly empty I can't really tell if it actually works. All I did was make a FlaggedArrayFieldLayoutAttribute class and inherit from ArrayFieldLayoutAttribute. Then move the Flagged field attribute variables to an interface. The FlaggedArrayFieldLayoutAttribute and the FlaggedFieldLayoutAttribute implement that interface. Then in the converters/unconverters, for anything checking if the type was a FlaggedFieldLayoutAttribute, I changed it to the interface. Surprisingly it compiled first try and I am shocked tbh. It's almost like I know what I'm doing. |
Beta Was this translation helpful? Give feedback.
-
|
Cool! A couple of questions/comments:
In terms of the 10 size shrink, I'd be interested to see what's missing, but this could be totally expected. When writing, my library makes full use of not writing empty fields at the end of a record. That said, writing isn't well-tested. I would be very interested in getting my hands on a 200MB STDF file for testing purposes. I'd be happy to sign any NDA or other agreement to not share it. In my IO improvement branch, I'm finding myself really gutting things, so that's going slow. I'm also resisting the urge to rewrite the ref.emit codegen since I want to move that to source generators. That means I'm making lots of intermediate concessions. Also, the modern .NET world is async, but all the nice LINQ stuff is synchronous, so I'm trying to find a model that plays nicely in both worlds. It probably means a more intention split between "record streaming" scenarios where records are processed ephemerally, and true "query" scenarios where the structure of the file is traversed. |
Beta Was this translation helpful? Give feedback.
-
|
Turning it into json/xml was just so I could see what is in the records in a more human readable way. My task with STDF files is to convert them to our own format so I'm going to need to match data from STDF files to where they would be located in our own files. Exporting an STDF file to JSON just makes my life easier when I'm trying to find something. I am not reading the json/xml back into stdf files. I can ask about the NDA stuff, but seeing as I'm having difficulty getting permission to contribute stuff that has zero IP in it, it's probably not going to happen. If they do let me contribute I can strip the json/xml stuff out before sending it on over. |
Beta Was this translation helpful? Give feedback.
-
|
Still no word on if I can publish it. I think I'm having the same problems you do with the whole testing aspect. Without stdf files with each of the record types used to the fullest, it's quite hard to make sure it works properly... I finished the documentation today. It took literal days but every record type and variable has an explanation for what it's for. It's formatted in a way where the tooltips look nice and you can still read it from classes. About 8000 lines were added to the repo when I checked it into my personal one... Regarding the license... Do you think we could switch to the MIT License? It seems to be the standard these days and the text very straight forward. Also could we put your copyright stuff in the readme or license file instead of at the top of every document? When you add a license to the project it will prompt you for your name and automatically put it in there. You can add the license by adding a file to the project from the git repo's webpage with the name "LICENSE" in all caps. It then knows what you are trying to do and will let you pick one from a list. |
Beta Was this translation helpful? Give feedback.
-
|
I found the right group to review my request to contribute here. I just don't have the time to do what they are asking yet. Hopefully I can get the approvals after I get a prototype of my converter out. BTW, reading in a 1.4gb stdf file with 14.3 million records took 32 seconds and ate up 8gb of ram. Lot of ram but the parsing time is pretty good imo. I'm designing the config mappings between the stdf file and our custom format now so hopefully I will be able to get some more metrics soon. I have to take a text based "WIR.WAFER_ID" kinda config and get the data out of it so hopefully reflection doesnt slow things down too much. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I figured we should probably move over here to chat.
Links for anyone else who finds this.
I'm still trying to get approvals to push my changes to the repo. We aren't used to using industry standards so management doesn't really know how to handle this kind of thing from a liability standpoint. I showed them the microsoft public license and I've been waiting to hear back.
I switched to your .net 7 branch and made it work for .net 6. We aren't allowed to use .net 7 in prod yet. Not much needed to change there. It was just removing some required modifiers.
I added...
One thing I noticed is that when I read the 200mb stdf file in and immediately write it back out, the file size shrinks by 10kb. Since my deliverables don't require me to write stdf files I may or may not do an audit to see what changed.
Beta Was this translation helpful? Give feedback.
All reactions