Package jmri.jmrix

Class AbstractProgrammerFacade

    • Method Detail

      • writeCV

        public void writeCV​(java.lang.String CV,
                            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:
        CV - 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
      • readCV

        public void readCV​(java.lang.String CV,
                           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:
        CV - the CV to read
        p - the listener that will be notified of the read
        Throws:
        ProgrammerException - if unable to communicate
      • confirmCV

        public void confirmCV​(java.lang.String CV,
                              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:
        CV - 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
      • getMode

        public 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()
        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)
        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()
        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)
        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
        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:
        The confirmation behavior that can be counted on (might be better in some cases)