Package lcm.logging

Class Log


  • public class Log
    extends java.lang.Object
    A class for reading and writing LCM log files.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  Log.Event
      Represents a single received LCM message.
    • Constructor Summary

      Constructors 
      Constructor Description
      Log​(java.lang.String path, java.lang.String mode)
      Opens a log file for reading or writing.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      Closes the log file and releases and system resources used by it.
      void flush()
      Flush any unwritten data to the underlying file descriptor.
      java.lang.String getPath()
      Retrieves the path to the log file.
      double getPositionFraction()  
      Log.Event readNext()
      Reads the next event in the log file
      void seekPositionFraction​(double frac)
      Seek to a position in the log file, specified by a fraction.
      void write​(long utime, java.lang.String channel, LCMEncodable msg)
      A convenience method for write.
      void write​(Log.Event e)
      Writes an event to the log file.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Log

        public Log​(java.lang.String path,
                   java.lang.String mode)
            throws java.io.IOException
        Opens a log file for reading or writing.
        Parameters:
        path - the filename to open
        mode - Specifies the access mode, must be one of "r", "rw", "rws", or "rwd". See RandomAccessFile for more detail.
        Throws:
        java.io.IOException
    • Method Detail

      • getPath

        public java.lang.String getPath()
        Retrieves the path to the log file.
        Returns:
        the path to the log file
      • flush

        public void flush()
                   throws java.io.IOException
        Flush any unwritten data to the underlying file descriptor.
        Throws:
        java.io.IOException
      • readNext

        public Log.Event readNext()
                           throws java.io.IOException
        Reads the next event in the log file
        Throws:
        java.io.EOFException - if the end of the file has been reached.
        java.io.IOException
      • getPositionFraction

        public double getPositionFraction()
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • seekPositionFraction

        public void seekPositionFraction​(double frac)
                                  throws java.io.IOException
        Seek to a position in the log file, specified by a fraction.
        Parameters:
        frac - a number in the range [0, 1)
        Throws:
        java.io.IOException
      • write

        public void write​(Log.Event e)
                   throws java.io.IOException
        Writes an event to the log file. The user is responsible for filling in the eventNumber field, which should be sequentially increasing integers starting with 0.
        Throws:
        java.io.IOException
      • write

        public void write​(long utime,
                          java.lang.String channel,
                          LCMEncodable msg)
                   throws java.io.IOException
        A convenience method for write. It internally manages the eventNumber field, and so calls to this method should not be mixed with calls to the other write methods.
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Closes the log file and releases and system resources used by it.
        Throws:
        java.io.IOException