@goetzinger to use the new code, call the following command:
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Apr 7 2021
Mar 25 2021
Feb 8 2021
Jan 24 2021
Dec 28 2020
Nov 26 2020
Oct 8 2020
Oct 6 2020
Apr 21 2020
Aug 13 2019
Jul 31 2019
Jul 12 2019
Jul 11 2019
Jul 9 2019
Moved it to std::unique_ptr .
Internally it still uses the raw pointers by using std::unique_ptr::release() to get the pointer and removing it from the unique_ptr .It is updatet in Functionality_Reliability Branch
Any reason why you are opposed to use smart pointers? As they are used throughout the library, I would suggest to use them everywhere.
@juhasz what do you think?
Jul 8 2019
Jul 5 2019
Jun 27 2019
I already changed it to shared pointers to hold the lib consistent. Or did I misunderstand something and abstractions are meant to be shared ?
So David you decide shared or unique pointers ? [Concerning the consistency]
About consistency: we should use smart pointers.
Whether to use shared or unique pointer is to be decided for each usage separately. If one object is shared and needs to be referenced from multiple places at the same time, then shared pointer must be used; unique pointer otherwise.
Abstractions in this case are uniquely owned and not shared -- as far as I remember. So std::unique_ptr should be used here.
@btutzer, how do you see this?
The only static asserts in RelibilityConfidenceCombinator.h are at lines 193 195 197 and in CrossCombinator.h at lines 80 82 besides them I can't find any.
Jun 26 2019
Moved it to std::unique_ptr .
Internally it still uses the raw pointers by using std::unique_ptr::release() to get the pointer and removing it from the unique_ptr .It is updatet in Functionality_Reliability Branch
I changed this inside the functionality_Reliability branch
Jun 25 2019
Your probably going to hate me after reading all my inline comments...
Lots of them are just spell-checks. I don't care about comments, but please try to keep the documentation correct. I myself am now looking into installing a spell-checker plugin for my IDE.
I guess it makes no sense auditing this commit, as it is work in progress (my fault, I added myself...). Could you please add me as an auditor once everything is ready?
Sorry for the delay. I'll check my open audits more often in the future.
Jun 24 2019
Jun 21 2019
Jun 19 2019
Jun 18 2019
Jun 11 2019
May 24 2019
Hi Maxi,
Commits 26ef3a3b5032, 90875aa7e993, 41ddbdc23746 and this one (e2b668b5985a) are about the issues we talked about yesterday.
You can now define LinearFunctions by providing two points (either as two std::pair's containing the coordinates or as x1, y1, x2, y2). These can be changed by setter methods.
May 23 2019
Looks good to me, although I am wondering what the acronyms MFP, MOTMFP and SFP stand for.
May 21 2019
I still can't build though.
I've seen this kind of problem with Clang 6 in another project... Warning suppressed in R20:04dbc622e75c.
Replaced with std::is_same in R20:06e9cd4317c1.
May 20 2019
This commit introduces some doxygen warnings during the build:
[...]I have no problem building documentation with doxygen 1.8.13. Maybe you use an older version?
Unfortunately, I had to wipe my computer clean as after updating libstdc++ from debian experimental to be able to build ROSA I was unable to boot.
I am now using clang-6 from the backports repo, which builds rosa fine, but breaks my build with this particular branch, due to 'std::is_same_v' missing.
I searched around and found no fix for that other than installing libstdc++ from testing, and I am not doing that again... Is there a way to work around std::is_same_v? If not, please tell me what distribution you are using so I can set up a virtual machine, but I would like to avoid that very much.
May 16 2019
I guess you are planning to implement the match() and noMatch() fuzzy functions in this class, right? So in the State detector you would call them for each known state and then when StateDetector gets a new Sample you would push the new sample to the State that it matches best to, or creating a new State if no State fits?
I had a quick look, and it seems OK except for my inline comment about History::~History().
I also wonder why History::lengthOfHistory and History::policyOfHistory? I think simply History::length() and History::policy() would be just as understandable and much less characters.
Fixed in 383554aef975
May 15 2019
In T130#2047, @juhasz wrote:I agree.
Let's keep the possibility to have a lightweight but statically sized History with std::array and add a dynamic version with std::vector.I suggest to keep History as an interface that declares the public functions of the current implementation. StaticHistory and DynamicHistory would be two implementations of that interface based on std:array and std::vector, respectively; and DynamicHistory adds the resize feature of course.
May 14 2019
Hi.
I think your fix makes sense.
As Pi is not needed by RoSA itself but only by apps and examples, the necessity to use the proposed include order is not a big restriction in my opinion.
Please push the fix.
May 13 2019
The only questions I have:
- With which rule did you give these typename names? For example, "template <typename T, typename A> class LinearFunction :". Why not something more descriptive instead of "T" and "A"?
T and A are very common for Type names. I agree that they are not very descriptive though. For the RangeConfidence i switched to D (Domain-Type), I (Id-Type) and R (Range-Type). I agree that it might be better to use descriptive names for types and I think I will do so in the future!
- Why did you use all the time this operator overloading function. Could it not by also done with a simple function that can be called and returns the result?
That is a design choice by @juhasz. It could be done by a simple function, and it actually is nothing more that a function. You could actually call it by obj->operator()(arg_list). I have actually done that in include/rosa/agent/FunctionAbstractions.hpp:218.
For me, the choice to override the ()-operator makes sense here, as it is intuitive that a functionality is executable.