Comments (5)
Models files get loaded shortly after launch, with fairly detailed error reporting. Program option --modelonly
can be used to force patcher exit once the model has been loaded.
from patcher.
I'm just putting this here for organization :)
Definition of Record Structure Elements:
Member types
Built in member types are: byte, sbyte, short, ushort, int, uint, float and string (including variations of string below).
These types can be also used as arrays with fixed length, e.g uint[4] or variable length e.g. byte[].
Arrays of variable length are used to load content of the whole field.
Enums can be used as member types.
Enums
Enums consist of enum members and each member must be the same underlying type.
Permitted enum types are as follows: byte, sbyte, short, ushort, int, uint
Enums are always defined in separate files and can be used as member types.
Structures
Structures are made from members. Each members needs a name and type.
Structures may have a name. Structures without a name are called anonymous and these will not be generated.
Properties of anonymous structures will be geenerated in the parent scope (e.g. record or field group)
Structures can be defined in separate files for reusability or inline where they are needed.
Fields
Fields directly define the content of form records. Fields can be represented by a member (of any built in type or enums), a structure or a field group.
Fields have a key (eg. EDID), with the exeption of fields represented by a field group (in this case the keys of the child fields are used).
Fields can may be defined in separate files and included anywhere to avoid redundancy. When a field is included, it is possible (and other required)
to provide key and name.
Fields can be used a list.
Fields can be declared as virtual in which case there is no underlying data and only a property is generated.
Fields can be declared as hidden in which case no property is generated for them.
Properties of virtual fields can access one or more hidden fields (via so called adapters).
Field Groups
Field groups are sort of like structures, but they contain fields (basically, memebers with keys).
Field groups will be generated sort of like structures.
Records
Records consist of fields.
Every records has a unique form type (e.g. KYWD) which is inferred from the name of the file in which they are defined.
Records also have a user friendly name (e.g. Keyword).
from patcher.
Thank you. Good idea! Eventually this should go to the wiki, once you translate it to "human". (:
from patcher.
Forgot to load functions!
from patcher.
Model object relations in the data model tree:
from patcher.
Related Issues (20)
- User-friendly console output for easy troubleshooting
- A template system to save predefined settings during setup and editing
- Beautify GUI
- Generate CS classes from the loaded data model HOT 1
- Finish writing the new XML files for all currently supported form types HOT 7
- Custom built-in record viewer
- Integrate Patcher functionality into the GUI
- Create big picture diagram outlining complete functionality of both GUI and Patcher engine HOT 1
- Data model DLL creation, usage and updating
- Write and test the XML files for all new, currently unsupported form types
- Console window scrolling problem HOT 1
- Data Model Serialization and Deserialization
- Implement new display-name property HOT 3
- Data model validation HOT 1
- Create a more detailed class diagram for the GUI
- Create a detailed class diagram for main Patcher engine functionality HOT 1
- Support for long, ulong, bool types for members and as types HOT 5
- Finalize GUI Layout
- Small Data Model Enhancements
- System.Reflection.TargetInvocationException
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from patcher.