#ifndef ACL_H #define ACL_H #include #include #include #include #ifdef WEB_SERVER #ifdef WEB_SERIAL_DEBUG #include #endif #endif struct User { String cardId; String desc; }; class ACL { public: ACL(); ACL(std::initializer_list userList); ~ACL(); void addUser(const String& cardId, const String& desc); void updateUser(const String& cardId, const String& newCardId, const String& newdesc); bool removeUser(const String& cardId); bool validateAccess(const String& cardId); int getACLSize() const; // Additional EEPROM functions void saveToEEPROM(); void loadFromEEPROM(); const User* getACL() const { return acl; } // Getter for acl private: User* acl; int aclSize; }; #endif