EmbAJAX
Simplistic framework for creating and handling displays and controls on a web page served by an embeddable device (Arduino or other microcontroller with Arduino support).
|
Go to the source code of this file.
Classes | |
class | EmbAJAXBase |
Abstract base class for anything shown on an EmbAJAXPage. More... | |
class | EmbAJAXOutputDriverBase |
Abstract base class for output drivers/server implementations. More... | |
class | EmbAJAXStatic |
A static chunk of HTML. More... | |
class | EmbAJAXConnectionIndicator |
connection status indicator More... | |
class | EmbAJAXElement |
Abstract base class for modifiable elements. More... | |
class | EmbAJAXMutableSpan |
An HTML span element with content that can be updated from the server (not the client) More... | |
class | EmbAJAXTextInput< SIZE > |
A text input field. More... | |
class | EmbAJAXSlider |
An HTML span element with content that can be updated from the server (not the client) More... | |
class | EmbAJAXColorPicker |
A color picker element (<input type="color">) More... | |
class | EmbAJAXPushButton |
A push-button. More... | |
class | EmbAJAXMomentaryButton |
A momentary "press-and-hold" button. More... | |
class | EmbAJAXCheckButton |
A checkable (option) button. More... | |
class | EmbAJAXRadioGroupBase |
abstract base for EmbAJAXRadioGroup, needed for internal reasons. More... | |
class | EmbAJAXContainer< NUM > |
Base class for groups of objects. More... | |
class | EmbAJAXHideableContainer< NUM > |
A list of objects that can be hidden, completely. More... | |
class | EmbAJAXRadioGroup< NUM > |
A set of radio buttons (mutally exclusive buttons), e.g. for on/off, or low/mid/high, etc. More... | |
class | EmbAJAXOptionSelectBase |
Abstract base class for EmbAJAXOptionSelect. More... | |
class | EmbAJAXOptionSelect< NUM > |
Drop-down list of selectable options. More... | |
class | EmbAJAXPageBase |
Absrract internal helper class. More... | |
class | EmbAJAXPage< NUM > |
The main interface class. More... | |
Macros | |
#define | EMBAJAX_MAX_ID_LEN |
#define | USE_PROGMEM_STRINGS |
#define | MAKE_EmbAJAXPage(name, title, header_add, ...) |
V
Main include file.
#define EMBAJAX_MAX_ID_LEN |
Maximum length to assume for id strings. Reducing this could help to reduce RAM usage, a little.
#define MAKE_EmbAJAXPage | ( | name, | |
title, | |||
header_add, | |||
... | |||
) |
Convenience macro to set up an EmbAJAXPage, without counting the number of elements for the template. See EmbAJAXPage::EmbAJAXPage()
name | Variable name of the page instance |
title | HTML Title |
header_add | a custom string to add to the HTML header section, e.g. a CSS definition. |
#define USE_PROGMEM_STRINGS |
Control storage of string constants
On some MCU-architectures, RAM and FLASH reside in two logically distinct address spaces. This implies that regular const char* strings need to be copied into RAM address space, even if they are fully static. EmbAJAX needs many string constants, and is therefore quite affected by this problem.
The Arduino F() macro helps to work around this (further reading, there), but does incur a small performance penalty, which can be avoided if a) RAM usage is not an issue, or b) the MCU uses a unified address space.
This define controls whether (most) static strings in EmbAJAX will be wrapped into the Arduino F() macro: 1 - always 0 - never undefined - based on auto-detected CPU arch (this is the default)