code: def open_required(func):
          
          @functools.wraps(func)
          def wrapper(self, *args, **kwargs):
              """Wrapper function to check that the given ``JLink`` has been
              opened.
  
              Args:
                self (JLink): the ``JLink`` instance
                args: list of arguments to pass to the wrapped function
                kwargs: key-word arguments dict to pass to the wrapped function
  
              Returns:
                The return value of the wrapped function.
  
              Raises:
                JLinkException: if the J-Link DLL is not open or the J-Link is
                    disconnected.
              """
              if not self.opened():
                  raise errors.JLinkException('J-Link DLL is not open.')
              elif not self.connected():
                  raise errors.JLinkException('J-Link connection has been lost.')
              return func(self, *args, **kwargs)
          return wrapper
docs: Decorator to specify that the J-Link DLL must be opened, and a
          J-Link connection must be established.
  
          Args:
            func (function): function being decorated
  
          Returns:
            The wrapper function.