Class ProgDebugger

    • Method Detail

      • resetCv

        public void resetCv​(int cv,
                            int val)
        Reset the CV to a value so one can detect if it's been written.

        Does not change the "lastWrite" and "lastWriteCv" results.

        Parameters:
        cv - the CV to reset
        val - the value
      • getCvVal

        public int getCvVal​(int cv)
        Get the CV value directly, without going through the usual indirect protocol. Used, for example, while testing.

        Does not change the "lastRead" and "lastReadCv" results.

        Parameters:
        cv - the CV to get
        Returns:
        the value or -1
      • hasBeenWritten

        public boolean hasBeenWritten​(int cv)
        See if a CV has been written.
        Parameters:
        cv - the CV to check
        Returns:
        true if written, false otherwise
      • clearHasBeenWritten

        public void clearHasBeenWritten​(int cv)
        Clear written status.
        Parameters:
        cv - the CV to clear
      • writeCV

        public void writeCV​(java.lang.String CVname,
                            int val,
                            ProgListener p)
                     throws ProgrammerException
        Perform a CV write in the system-specific manner, and using the specified programming mode.

        Handles a general address space through a String address. Each programmer defines the acceptable formats.

        Note that this returns before the write is complete; you have to provide a ProgListener to hear about completion. For simplicity, expect the return to be on the GUI thread.

        Exceptions will only be thrown at the start, not during the actual programming sequence. A typical exception would be due to an invalid mode (though that should be prevented earlier)

        Specified by:
        writeCV in interface Programmer
        Parameters:
        CVname - the CV to write
        val - the value to write
        p - the listener that will be notified of the write
        Throws:
        ProgrammerException - if unable to communicate
      • nextRead

        public void nextRead​(int r)
      • confirmCV

        public void confirmCV​(java.lang.String CVname,
                              int val,
                              ProgListener p)
                       throws ProgrammerException
        Confirm the value of a CV using the specified programming mode. On some systems, this is faster than a read.

        Handles a general address space through a String address. Each programmer defines the acceptable formats.

        Note that this returns before the write is complete; you have to provide a ProgListener to hear about completion. For simplicity, expect the return to be on the GUI thread.

        Exceptions will only be thrown at the start, not during the actual programming sequence. A typical exception would be due to an invalid mode (though that should be prevented earlier)

        Specified by:
        confirmCV in interface Programmer
        Parameters:
        CVname - the CV to confirm
        val - the value to confirm
        p - the listener that will be notified of the confirmation
        Throws:
        ProgrammerException - if unable to communicate
      • readCV

        public void readCV​(java.lang.String CVname,
                           ProgListener p)
                    throws ProgrammerException
        Perform a CV read in the system-specific manner, and using the specified programming mode.

        Handles a general address space through a String address. Each programmer defines the acceptable formats.

        Note that this returns before the write is complete; you have to provide a ProgListener to hear about completion. For simplicity, expect the return to be on the GUI thread.

        Exceptions will only be thrown at the start, not during the actual programming sequence. A typical exception would be due to an invalid mode (though that should be prevented earlier)

        Specified by:
        readCV in interface Programmer
        Parameters:
        CVname - the CV to read
        p - the listener that will be notified of the read
        Throws:
        ProgrammerException - if unable to communicate
      • getMode

        public final ProgrammingMode getMode()
        Get the current programming mode
        Specified by:
        getMode in interface Programmer
        Returns:
        the current mode or null if none is defined and no default mode is defined
      • getCanRead

        public boolean getCanRead()
        Description copied from interface: Programmer
        Checks the general read capability, regardless of mode
        Specified by:
        getCanRead in interface Programmer
        Returns:
        true if the programmer is capable of reading; false otherwise
      • getCanRead

        public boolean getCanRead​(java.lang.String addr)
        Description copied from interface: Programmer
        Checks the general read capability, regardless of mode, for a specific address
        Specified by:
        getCanRead in interface Programmer
        Parameters:
        addr - the address to read
        Returns:
        true if the address can be read; false otherwise
      • getCanWrite

        public boolean getCanWrite()
        Description copied from interface: Programmer
        Checks the general write capability, regardless of mode
        Specified by:
        getCanWrite in interface Programmer
        Returns:
        true if the programmer is capable of writing; false otherwise
      • getCanWrite

        public boolean getCanWrite​(java.lang.String addr)
        Description copied from interface: Programmer
        Checks the general write capability, regardless of mode, for a specific address
        Specified by:
        getCanWrite in interface Programmer
        Parameters:
        addr - the address to write to
        Returns:
        true if the address can be written to; false otherwise
      • getWriteConfirmMode

        @Nonnull
        public Programmer.WriteConfirmMode getWriteConfirmMode​(java.lang.String addr)
        Learn about whether the programmer does any kind of verification of write operations

        By default, say that no verification is done.

        Specified by:
        getWriteConfirmMode in interface Programmer
        Parameters:
        addr - A CV address to check (in case this varies with CV range) or null for any
        Returns:
        Always WriteConfirmMode.NotVerified
      • sendReturn

        void sendReturn​(java.lang.Runnable run)
        Arrange for the return to be invoked on the Swing thread.
        Parameters:
        run - the Runnable