Get desktop application:
View/edit binary Protocol Buffers messages
AudioFrame with uri of the sample to be played and the channel number
Used in:
supports file://<path>, http(s)://<url> with .wav or .aiff files
stops playback on specified channel if true
Used in:
Used in:
Emitted by octopus when an app is displayed
Emitted by octopus when the app is no longer displayed
Emitted by apps when they start
Emitted by apps when they are finished. Eg to signal that the next app can be selected.
Used in:
Select minimal size based on field type
1 word; up to 15 byte fields, no arrays
2 words; up to 4095 byte fields, 4095 entry arrays
4 words; up to 2^32-1 byte fields, 2^16-1 entry arrays
8 words; up to 2^32-1 entry arrays
Used in:
Used in:
Automatically decide field type, generate static field if possible.
Always generate a callback field.
Always generate a dynamically allocated field.
Generate a static field or raise an exception if not possible.
Ignore the field completely.
Legacy option, use the separate 'fixed_length' option instead
Used in:
Used in:
From Firmware to Octopus, internal use only
Used in:
0 or 1 for buttons, -1 to 1 for directions
Used in:
in milliseconds
Used in: ,
Used in:
Default, 32/64bit based on type in .proto
This is the inner options message, which basically defines options for a field. When it is used in message or file scope, it applies to all fields.
Allocated size for 'bytes' and 'string' fields. For string fields, this should include the space for null terminator.
Maximum length for 'string' fields. Setting this is equivalent to setting max_size to a value of length+1.
Allocated number of entries in arrays ('repeated' fields)
Size of integer fields. Can save some memory if you don't need full 32 bits for the value.
Force type of field (callback or static allocation)
Use long names for enums, i.e. EnumName_EnumValue.
Add 'packed' attribute to generated structs. Note: this cannot be used on CPUs that break on unaligned accesses to variables.
Add 'packed' attribute to generated enums.
Skip this message
Generate oneof fields as normal optional fields instead of union.
integer type tag for a message
decode oneof as anonymous union
Proto3 singular field does not generate a "has_" flag
Force proto3 messages to have no "has_" flag. This was default behavior until nanopb-0.4.0.
Generate an enum->string mapping function (can take up lots of space).
Generate bytes arrays with fixed length
Generate repeated field with fixed count
Generate message-level callback that is called before decoding submessages. This can be used to set callback fields for submsgs inside oneofs.
Shorten or remove package names from type names. This option applies only on the file level.
Data type for storage associated with callback fields.
Callback function used for encoding and decoding. Prior to nanopb-0.4.0, the callback was specified in per-field pb_callback_t structure. This is still supported, but does not work inside e.g. oneof or pointer fields. Instead, a new method allows specifying a per-message callback that will be called for all callback fields in a message type.
Select the size of field descriptors. This option has to be defined for the whole message, not per-field. Usually automatic selection is ok, but if it results in compilation errors you can increase the field size here.
Set default value for has_ fields.
Extra files to include in generated `.pb.h`
Automatic includes to exclude from generated `.pb.h` Same as nanopb_generator.py command line flag -x.
Package name that applies only for nanopb.
Override type of the field in generated C code. Only to be used with related field types
Due to historical reasons, nanopb orders fields in structs by their tag number instead of the order in .proto. Set this to false to keep the .proto order. The default value will probably change to false in nanopb-0.5.0.
Set the FT_DEFAULT field conversion strategy. A field that can become a static member of a c struct (e.g. int, bool, etc) will be a a static field. Fields with dynamic length are converted to either a pointer or a callback.
wrapper for all messages
Frames with pixel data.
Frames with audio data
Events from the input controllers
Events around controlling apps
** Internal use only **
Used in:
Frame with 3 bytes per pixel (RGB)
Used in:
Series of RGB values. 8bit per color. First pixel is top left. One panel after the other.
Optional. In milliseconds. Fade this frame over the previous one with an easing curve. Colors are blended in gamma corrected RGB space.
If true, any existing W data will be retained and mixed with this RGB frame.
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Default, no typename mangling
Strip current package name
Only use last path component
Replace the package name by the initials
Frame that uses only the white channel, 1 byte per pixel.
Used in:
Selects pixel colors from the palette. First pixel is top left. One panel after the other.
Optional. In milliseconds. Fade this frame over the previous one with an easing curve. Colors are blended in gamma corrected RGB space.
If true, any existing RGB data will be retained and mixed with this.