Get rid of enum Quale::Type, create BoundingQuale; use typeid()

We just learned about typeid. Apparently it was either not mentioned
in the Stroupstrup book or we totally missed it.
This commit is contained in:
2025-08-03 05:23:05 -04:00
parent 79825e4da3
commit 6f6fa77498
2 changed files with 18 additions and 16 deletions
+5 -1
View File
@@ -11,9 +11,13 @@ namespace smo {
* Mentexents are Mentities, but not all Mentities are Mentexents. * Mentexents are Mentities, but not all Mentities are Mentexents.
*/ */
class MentalExistent struct MentalExistent
: public MentalEntity : public MentalEntity
{ {
public:
MentalExistent(const MentalEntity::Id id)
: MentalEntity(id)
{}
}; };
typedef MentalExistent Mentexent; typedef MentalExistent Mentexent;
+13 -15
View File
@@ -11,21 +11,10 @@ class Quale
: public MentalExistent : public MentalExistent
{ {
public: public:
enum class Type Quale(const MentalEntity::Id id, const int32_t intensity)
{ : MentalExistent(id),
NEUTRAL, intensity(intensity)
/* Bounding refers to qualia such as tactile pressure which {}
* are mostly neutral but disclose information about the limits
* of the body.
**/
BOUNDING,
PAINFUL,
PLEASURABLE
} type;
public:
Quale(const Type type, const int32_t intensity)
: type(type), intensity(intensity) {}
public: public:
int32_t intensity; int32_t intensity;
@@ -36,6 +25,15 @@ class NeutralQuale
{ {
}; };
/* Bounding qualia refer to qualia such as tactile pressure which are
* mostly neutral but disclose information about the limits of the body.
* These qualia are supplied by interoceptive sensors.
**/
class BoundingQuale
: public NeutralQuale
{
};
class NonNeutralQuale class NonNeutralQuale
: public Quale, public AttentionTrigger : public Quale, public AttentionTrigger
{ {