io.github.hapjava.characteristics.impl.airquality.VOCDensityCharacteristic Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hap Show documentation
Show all versions of hap Show documentation
Homekit Accessory Protocol for Java
package io.github.hapjava.characteristics.impl.airquality;
import io.github.hapjava.characteristics.HomekitCharacteristicChangeCallback;
import io.github.hapjava.characteristics.impl.base.FloatCharacteristic;
import java.util.Optional;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
import java.util.function.Supplier;
/**
* This characteristic indicates the current volatile organic compound (VOC) density in
* micrograms/m3.
*/
public class VOCDensityCharacteristic extends FloatCharacteristic {
public static final double DEFAULT_MIN_VALUE = 0;
public static final double DEFAULT_MAX_VALUE = 1000;
public static final double DEFAULT_STEP = 1;
public VOCDensityCharacteristic(
double minValue,
double maxValue,
double minStep,
Supplier> getter,
Consumer subscriber,
Runnable unsubscriber) {
super(
"000000C8-0000-1000-8000-0026BB765291",
"VOC density",
minValue,
maxValue,
minStep,
"micrograms",
Optional.of(getter),
Optional.empty(),
Optional.of(subscriber),
Optional.of(unsubscriber));
}
public VOCDensityCharacteristic(
Supplier> getter,
Consumer subscriber,
Runnable unsubscriber) {
this(DEFAULT_MIN_VALUE, DEFAULT_MAX_VALUE, DEFAULT_STEP, getter, subscriber, unsubscriber);
}
}