/** * Copyright (c) 2010-2016 by the respective copyright holders. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package org.openhab.binding.gpio; import org.openhab.core.binding.BindingProvider; /** * GPIO binding providers interface. * * @author Dancho Penev * @since 1.5.0 */ public interface GPIOBindingProvider extends BindingProvider { public static final int PINNUMBER_UNDEFINED = -1; public static final long DEBOUNCEINTERVAL_UNDEFINED = -1; /** * Query for configured pin number. * * @param itemName the name of the item for which we make query * @return the configured pin number */ public int getPinNumber(String itemName); /** * Query for configured pin force. * * @param itemName the name of the item for which we make query * @return the configured force option */ public boolean getPinForce(String itemName); /** * Query for configured debounce interval. * * @param itemName the name of the item for which we make query * @return the configured debounce interval */ public long getDebounceInterval(String itemName); /** * Query for configured activelow state. * * @param itemName the name of the item for which we make query * @return the configured activelow state */ public int getActiveLow(String itemName); /** * Query for configured pin direction. * * @param itemName the name of the item for which we make query * @return the configured pin direction */ public int getDirection(String itemName); /** * Query has item configuration or not. * * @param itemName the name of the item for which we make query * @return <code>true</code> if the item has configuration, * <code>false</code> otherwise */ public boolean isItemConfigured(String itemName); }