Version | 1.18.9 |
---|
A generic value container and several data types.
See http://lv2plug.in/ns/ext/atom for details.
Modules | |
Forge | |
Utilities | |
Data Structures | |
struct | LV2_Atom |
struct | LV2_Atom_Int |
struct | LV2_Atom_Long |
struct | LV2_Atom_Float |
struct | LV2_Atom_Double |
struct | LV2_Atom_URID |
struct | LV2_Atom_String |
struct | LV2_Atom_Literal_Body |
struct | LV2_Atom_Literal |
struct | LV2_Atom_Tuple |
struct | LV2_Atom_Vector_Body |
struct | LV2_Atom_Vector |
struct | LV2_Atom_Property_Body |
struct | LV2_Atom_Property |
struct | LV2_Atom_Object_Body |
struct | LV2_Atom_Object |
struct | LV2_Atom_Event |
struct | LV2_Atom_Sequence_Body |
struct | LV2_Atom_Sequence |
union | LV2_Atom_Event.time |
Typedefs | |
typedef LV2_Atom_Int | LV2_Atom_Bool |
struct LV2_Atom |
struct LV2_Atom_Int |
struct LV2_Atom_Long |
struct LV2_Atom_Float |
struct LV2_Atom_Double |
struct LV2_Atom_URID |
struct LV2_Atom_String |
struct LV2_Atom_Literal_Body |
struct LV2_Atom_Literal |
An atom:Literal.
May be cast to LV2_Atom.
Data Fields | ||
---|---|---|
LV2_Atom | atom | Atom header. |
LV2_Atom_Literal_Body | body | Body. |
struct LV2_Atom_Tuple |
struct LV2_Atom_Vector_Body |
struct LV2_Atom_Vector |
An atom:Vector.
May be cast to LV2_Atom.
Data Fields | ||
---|---|---|
LV2_Atom | atom | Atom header. |
LV2_Atom_Vector_Body | body | Body. |
struct LV2_Atom_Property_Body |
The body of an atom:Property (typically in an atom:Object).
Data Fields | ||
---|---|---|
uint32_t | key | Key (predicate) (mapped URI). |
uint32_t | context | Context URID (may be, and generally is, 0). |
LV2_Atom | value | Value atom header. |
struct LV2_Atom_Property |
An atom:Property.
May be cast to LV2_Atom.
Data Fields | ||
---|---|---|
LV2_Atom | atom | Atom header. |
LV2_Atom_Property_Body | body | Body. |
struct LV2_Atom_Object_Body |
The body of an atom:Object.
May be cast to LV2_Atom.
Data Fields | ||
---|---|---|
uint32_t | id | URID, or 0 for blank. |
uint32_t | otype | Type URID (same as rdf:type, for fast dispatch). |
struct LV2_Atom_Object |
An atom:Object.
May be cast to LV2_Atom.
Data Fields | ||
---|---|---|
LV2_Atom | atom | Atom header. |
LV2_Atom_Object_Body | body | Body. |
struct LV2_Atom_Event |
The header of an atom:Event.
Note this type is NOT an LV2_Atom.
Data Fields | ||
---|---|---|
union LV2_Atom_Event.time | time |
Time stamp. Which type is valid is determined by context. |
LV2_Atom | body | Event body atom header. |
struct LV2_Atom_Sequence_Body |
The body of an atom:Sequence (a sequence of events).
The unit field is either a URID that described an appropriate time stamp type, or may be 0 where a default stamp type is known. For LV2_Descriptor::run(), the default stamp type is audio frames.
The contents of a sequence is a series of LV2_Atom_Event, each aligned to 64-bits, for example:
| Event 1 (size 6) | Event 2 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |FRAMES |TYPE |SIZE |DATADATADATAPAD|FRAMES |...
Data Fields | ||
---|---|---|
uint32_t | unit | URID of unit of event time stamps. |
uint32_t | pad | Currently unused. |
struct LV2_Atom_Sequence |
An atom:Sequence.
Data Fields | ||
---|---|---|
LV2_Atom | atom | Atom header. |
LV2_Atom_Sequence_Body | body | Body. |
union LV2_Atom_Event.time |
#define LV2_ATOM_URI "http://lv2plug.in/ns/ext/atom" |
#define LV2_ATOM_PREFIX LV2_ATOM_URI "#" |
#define LV2_ATOM__Atom LV2_ATOM_PREFIX "Atom" |
#define LV2_ATOM__AtomPort LV2_ATOM_PREFIX "AtomPort" |
#define LV2_ATOM__Blank LV2_ATOM_PREFIX "Blank" |
#define LV2_ATOM__Bool LV2_ATOM_PREFIX "Bool" |
#define LV2_ATOM__Chunk LV2_ATOM_PREFIX "Chunk" |
#define LV2_ATOM__Double LV2_ATOM_PREFIX "Double" |
#define LV2_ATOM__Event LV2_ATOM_PREFIX "Event" |
#define LV2_ATOM__Float LV2_ATOM_PREFIX "Float" |
#define LV2_ATOM__Int LV2_ATOM_PREFIX "Int" |
#define LV2_ATOM__Literal LV2_ATOM_PREFIX "Literal" |
#define LV2_ATOM__Long LV2_ATOM_PREFIX "Long" |
#define LV2_ATOM__Number LV2_ATOM_PREFIX "Number" |
#define LV2_ATOM__Object LV2_ATOM_PREFIX "Object" |
#define LV2_ATOM__Path LV2_ATOM_PREFIX "Path" |
#define LV2_ATOM__Property LV2_ATOM_PREFIX "Property" |
#define LV2_ATOM__Resource LV2_ATOM_PREFIX "Resource" |
#define LV2_ATOM__Sequence LV2_ATOM_PREFIX "Sequence" |
#define LV2_ATOM__Sound LV2_ATOM_PREFIX "Sound" |
#define LV2_ATOM__String LV2_ATOM_PREFIX "String" |
#define LV2_ATOM__Tuple LV2_ATOM_PREFIX "Tuple" |
#define LV2_ATOM__URI LV2_ATOM_PREFIX "URI" |
#define LV2_ATOM__URID LV2_ATOM_PREFIX "URID" |
#define LV2_ATOM__Vector LV2_ATOM_PREFIX "Vector" |
#define LV2_ATOM__atomTransfer LV2_ATOM_PREFIX "atomTransfer" |
#define LV2_ATOM__beatTime LV2_ATOM_PREFIX "beatTime" |
#define LV2_ATOM__bufferType LV2_ATOM_PREFIX "bufferType" |
#define LV2_ATOM__childType LV2_ATOM_PREFIX "childType" |
#define LV2_ATOM__eventTransfer LV2_ATOM_PREFIX "eventTransfer" |
#define LV2_ATOM__frameTime LV2_ATOM_PREFIX "frameTime" |
#define LV2_ATOM__supports LV2_ATOM_PREFIX "supports" |
#define LV2_ATOM__timeUnit LV2_ATOM_PREFIX "timeUnit" |
#define LV2_ATOM_REFERENCE_TYPE 0 |
The special type for a reference atom.
#define LV2_ATOM_CONTENTS | ( | type, | |
atom | |||
) | ((void*)((uint8_t*)(atom) + sizeof(type))) |
Return a pointer to the contents of an Atom.
The "contents" of an atom is the data past the complete type-specific header.
type | The type of the atom, for example LV2_Atom_String. |
atom | A variable-sized atom. |
#define LV2_ATOM_CONTENTS_CONST | ( | type, | |
atom | |||
) | ((const void*)((const uint8_t*)(atom) + sizeof(type))) |
Const version of LV2_ATOM_CONTENTS.
#define LV2_ATOM_BODY | ( | atom | ) | LV2_ATOM_CONTENTS(LV2_Atom, atom) |
Return a pointer to the body of an Atom.
The "body" of an atom is the data just past the LV2_Atom head (i.e. the same offset for all types).
#define LV2_ATOM_BODY_CONST | ( | atom | ) | LV2_ATOM_CONTENTS_CONST(LV2_Atom, atom) |
Const version of LV2_ATOM_BODY.
typedef LV2_Atom_Int LV2_Atom_Bool |
An atom:Bool.
May be cast to LV2_Atom.