Concept,Cologex,Goal: refactor headers

All Cologexes (both Cologexes and CologexSets) are now categorized
as Concepts.
Goals are now also Concepts -- they inherit from Concept as a base
class.

Using Concept as the base class for both Cologex and CologexSet
allows us to treat both cologexes and cologexsets the same way
when comparing in the abstract.
This commit is contained in:
2025-10-05 21:15:55 -04:00
parent eddee05e41
commit 27ff4a3a0a
3 changed files with 30 additions and 4 deletions
+13 -2
View File
@@ -5,6 +5,8 @@
#include <memory>
#include <logic.h>
#include <mentalEntity.h>
#include <concept.h>
#include <user/stimFrame.h>
namespace smo {
namespace cologex {
@@ -37,14 +39,23 @@ public:
};
class CombinatorialLogicExpression
: public MentalEntity, public logic::Expression
: public MentalEntity, public logic::Expression, public Concept
{
public:
};
class CombinatorialLogicExpressionSet
: public MentalEntity, public Concept
{
public:
std::vector<
std::pair<stim_buff::SimultaneityStamp, CombinatorialLogicExpression>
> expressions;
};
typedef CombinatorialLogicExpression Cologex;
typedef CombinatorialLogicExpression Clast;
typedef CombinatorialLogicExpressionSet CologexSet;
} // namespace cologex
} // namespace smo
+14
View File
@@ -0,0 +1,14 @@
#ifndef _CONCEPT_H
#define _CONCEPT_H
namespace smo {
namespace cologex {
class Concept
{
};
} // namespace cologex
} // namespace smo
#endif // _CONCEPT_H
+3 -2
View File
@@ -6,7 +6,8 @@
namespace smo {
class Goal
: public concepts::Concept {
: public cologex::Concept
{
public:
Goal() = default;
~Goal() = default;
@@ -14,4 +15,4 @@ public:
} // namespace smo
#endif
#endif // _GOAL_H