GpioChangeReader Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa un búfer circular compartido entre el modo kernel y el modo de usuario en el que se colocan las marcas de tiempo de alta resolución cuando cambia un valor de patilla de E/S de uso general (GPIO).
public ref class GpioChangeReader sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.Devices.Gpio.IGpioChangeReaderFactory, 196608, "Windows.Devices.DevicesLowLevelContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Devices.DevicesLowLevelContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class GpioChangeReader final : IClosable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Devices.Gpio.IGpioChangeReaderFactory), 196608, "Windows.Devices.DevicesLowLevelContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Devices.DevicesLowLevelContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class GpioChangeReader : System.IDisposable
function GpioChangeReader(pin, minCapacity)
Public NotInheritable Class GpioChangeReader
Implements IDisposable
- Herencia
- Atributos
- Implementaciones
Requisitos de Windows
Familia de dispositivos |
Windows 10 Creators Update (se introdujo en la versión 10.0.15063.0)
|
API contract |
Windows.Devices.DevicesLowLevelContract (se introdujo en la versión v3.0)
|
Comentarios
El modo kernel coloca una marca de tiempo en el búfer cuando un pin cambia el valor y el modo de usuario quita los elementos del búfer. Un desbordamiento se produce cuando ya no hay suficiente espacio en el búfer para colocar marcas de tiempo adicionales. Tras el desbordamiento, no se registran más eventos y la propiedad IsOverflowed devolverá true.
Esta clase no es segura para subprocesos. Las funciones de llamada de esta clase simultáneamente desde varios subprocesos tendrán resultados imprevisibles.
Constructores
GpioChangeReader(GpioPin) |
Crea un nuevo Objeto GpioChangeReader asociado al pin especificado. Solo un solo GpioChangeReader puede estar asociado a un pin en un momento dado. |
GpioChangeReader(GpioPin, Int32) |
Crea un nuevo Objeto GpioChangeReader asociado al pin especificado y con la capacidad mínima especificada para los registros de cambio. Solo un solo GpioChangeReader puede estar asociado a un pin en un momento dado. |
Propiedades
Capacity |
Obtiene el número máximo de registros de cambios que GpioChangeReader puede almacenar a la vez. |
IsEmpty |
Obtiene si actualmente hay cero registros de cambios en el lector. |
IsOverflowed |
Obtiene si se ha producido un error al intentar colocar un registro de cambio en el búfer del lector debido a que el búfer está lleno. |
IsStarted |
Obtiene si la grabación de cambios de patillas está activa actualmente. |
Length |
Obtiene el número de registros que se encuentran actualmente en el lector de cambios. |
Polarity |
Obtiene o establece la polaridad de las transiciones que se registrarán. La polaridad solo se puede cambiar cuando no se inicia la grabación de cambios de patillas. |
Métodos
Clear() |
Descarta todos los registros de cambios del búfer del lector. |
Close() |
Cierra el lector de cambios, liberando el búfer de memoria asociado y desasociando el lector de su pin. |
Dispose() |
Realiza tareas definidas por la aplicación asociadas a la liberación o al restablecimiento de recursos no administrados. |
GetAllItems() |
Quita y devuelve todos los elementos actuales en el búfer del lector. |
GetNextItem() |
Recupera y quita el registro de cambio insertado más antiguo del búfer del lector. |
PeekNextItem() |
Recupera el registro de cambios insertado anteriormente del búfer del lector, sin quitarlo. |
Start() |
Inicia la grabación de cambios en la polaridad de patillas. Solo se puede llamar a este método cuando la grabación de cambios aún no está activa. |
Stop() |
Detenga la grabación de cambios en la polaridad de patillas. Solo se puede llamar a este método cuando la grabación de cambios está activa actualmente. |
WaitForItemsAsync(Int32) |
Espera a que el búfer se rellene con al menos el número de elementos, momento en el que se completará la acción asincrónica. Esta acción es cancelable. |