Package edu.wpi.first.util.datalog
Class ProtobufLogEntry<T>
java.lang.Object
edu.wpi.first.util.datalog.DataLogEntry
edu.wpi.first.util.datalog.ProtobufLogEntry<T>
- Type Parameters:
T
- value class
Log protobuf-encoded values.
-
Field Summary
Fields inherited from class edu.wpi.first.util.datalog.DataLogEntry
m_entry, m_log
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Appends a record to the log.void
Appends a record to the log.static <T,
MessageType extends us.hebi.quickbuf.ProtoMessage<?>>
ProtobufLogEntry<T>Creates a protobuf-encoded log entry.static <T,
MessageType extends us.hebi.quickbuf.ProtoMessage<?>>
ProtobufLogEntry<T>Creates a protobuf-encoded log entry.static <T,
MessageType extends us.hebi.quickbuf.ProtoMessage<?>>
ProtobufLogEntry<T>Creates a protobuf-encoded log entry.static <T,
MessageType extends us.hebi.quickbuf.ProtoMessage<?>>
ProtobufLogEntry<T>Creates a protobuf-encoded log entry.Gets the last value.boolean
Gets whether there is a last value.void
Updates the last value and appends a record to the log if it has changed.void
Updates the last value and appends a record to the log if it has changed.Methods inherited from class edu.wpi.first.util.datalog.DataLogEntry
finish, finish, setMetadata, setMetadata
-
Method Details
-
create
public static <T,MessageType extends us.hebi.quickbuf.ProtoMessage<?>> ProtobufLogEntry<T> create(DataLog log, String name, Protobuf<T, MessageType> proto, String metadata, long timestamp) Creates a protobuf-encoded log entry.- Type Parameters:
T
- value class (inferred from proto)MessageType
- protobuf message type (inferred from proto)- Parameters:
log
- datalogname
- name of the entryproto
- protobuf serialization implementationmetadata
- metadatatimestamp
- entry creation timestamp (0=now)- Returns:
- ProtobufLogEntry
-
create
public static <T,MessageType extends us.hebi.quickbuf.ProtoMessage<?>> ProtobufLogEntry<T> create(DataLog log, String name, Protobuf<T, MessageType> proto, String metadata) Creates a protobuf-encoded log entry.- Type Parameters:
T
- value class (inferred from proto)MessageType
- protobuf message type (inferred from proto)- Parameters:
log
- datalogname
- name of the entryproto
- protobuf serialization implementationmetadata
- metadata- Returns:
- ProtobufLogEntry
-
create
public static <T,MessageType extends us.hebi.quickbuf.ProtoMessage<?>> ProtobufLogEntry<T> create(DataLog log, String name, Protobuf<T, MessageType> proto, long timestamp) Creates a protobuf-encoded log entry.- Type Parameters:
T
- value class (inferred from proto)MessageType
- protobuf message type (inferred from proto)- Parameters:
log
- datalogname
- name of the entryproto
- protobuf serialization implementationtimestamp
- entry creation timestamp (0=now)- Returns:
- ProtobufLogEntry
-
create
public static <T,MessageType extends us.hebi.quickbuf.ProtoMessage<?>> ProtobufLogEntry<T> create(DataLog log, String name, Protobuf<T, MessageType> proto) Creates a protobuf-encoded log entry.- Type Parameters:
T
- value class (inferred from proto)MessageType
- protobuf message type (inferred from proto)- Parameters:
log
- datalogname
- name of the entryproto
- protobuf serialization implementation- Returns:
- ProtobufLogEntry
-
append
Appends a record to the log.- Parameters:
value
- Value to recordtimestamp
- Time stamp (0 to indicate now)
-
append
Appends a record to the log.- Parameters:
value
- Value to record
-
update
Updates the last value and appends a record to the log if it has changed.Note: the last value is local to this class instance; using update() with two instances pointing to the same underlying log entry name will likely result in unexpected results.
- Parameters:
value
- Value to recordtimestamp
- Time stamp (0 to indicate now)
-
update
Updates the last value and appends a record to the log if it has changed.Note: the last value is local to this class instance; using update() with two instances pointing to the same underlying log entry name will likely result in unexpected results.
- Parameters:
value
- Value to record
-
hasLastValue
Gets whether there is a last value.Note: the last value is local to this class instance and updated only with update(), not append().
- Returns:
- True if last value exists, false otherwise.
-
getLastValue
Gets the last value.Note: the last value is local to this class instance and updated only with update(), not append().
- Returns:
- Last value, or null if none.
-