From 6dae533d9f8d50c95678dbb9696c1ac894bc323d Mon Sep 17 00:00:00 2001 From: Paul-Walcher <paulwalcher12@gmail.com> Date: Sat, 4 May 2024 15:18:06 +0200 Subject: [PATCH] create_fact.txt deleted --- DOC/create_fact.txt | 69 --------------------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 DOC/create_fact.txt diff --git a/DOC/create_fact.txt b/DOC/create_fact.txt deleted file mode 100644 index 5f07483..0000000 --- a/DOC/create_fact.txt +++ /dev/null @@ -1,69 +0,0 @@ - -in gadget: use Factadder - -factadder adds the fact to the server, use standard method AddFactIfNotFound - -fact: fact to add -samestep: if the fact belongs conceptually to the previously added one - -Fact.cs: Caches all facts - -see TestFact as an example -parseFact interprets new MMT fact. - --------------------------------------- - -In Assets\InteractionEngine\FactHandling\Facts create your own fact - -First, add your scroll you Implemented into Assets\Scripts\MMTServer\CommunicationProtocal\MMTConstants.cs -Follow the definitions of previous srolls/functions. - -Then, in Assets\InteractionEngine\FactHandling\Facts.ParsingDictionary.Dictionary add an entry with your -MMTConstant as key and the parseFact Method of the Fact class you're going to implement. - -Then in Assets\InteractionEngine\FactHandling\Facts.ParsingDictionary add a line to the lines -that look like [JsonSubtypes,.KnownSubType(typeof(YOUR_FACTCLASS), nameof(YOUR_FACTCLASS))] - -Your fact should include: - -1.) A constructor that calls base(). Constructor can have SomDoc, which is the MMT URI as OMS. - -2.) define: A method parseFact(List<Fact>, MMTFact fact). - Then, in this method, you will try to add your fact to the ParsingDictionary in Assets\InteractionEngine\FactHandling\Facts, - then add it to the first argument (the list). - -3.) define: public override bool HasDependentFact => [true/false] - -4.) define: GetDeendentFactIds(), which gives back a string array of the dependent Ids of your facts. - -5.) define: GetHashCode() - -6.) define: EquivalentWrapped(YOUR_FACTCLASS, YOUR_FACTCLASS), which is a Method that - returns true if the two facts are (approximately) equal - -7.) define: _ReInitializeMe(Dictionary<string, string> old_to_new), that gets called when the Fact - gets reinstantiated - -8.) define: MakeMMTDecalaration(), which gives back a new MMTFact - -9.) define: Defines(), which gives back a SOMDoc(MMTObject) of your class - - - - ----------------------------------------------------------- - -1.) In Assets\InteractionEngine\FactHandling\Facts create your own fact. () - - -2.) - - - - - - - - - - -- GitLab