package rocks.inspectit.agent.java.sensor.platform; import rocks.inspectit.agent.java.sensor.ISensor; import rocks.inspectit.shared.all.communication.SystemSensorData; import rocks.inspectit.shared.all.instrumentation.config.impl.PlatformSensorTypeConfig; /** * This interface is implemented by classes which provide information about the system, like CPU, * Memory etc. * * @author Patrice Bouillet * @author Max Wassiljew (NovaTec Consulting GmbH) */ public interface IPlatformSensor extends ISensor { /** * Returns the {@link PlatformSensorTypeConfig} for this sensor. * * @return Returns the {@link PlatformSensorTypeConfig} for this sensor. */ @Override PlatformSensorTypeConfig getSensorTypeConfig(); /** * Reset any saved state in the sensor. Used to reset the sensor data collector class. */ void reset(); /** * This method is called whenever the sensor should be updated. */ void gather(); /** * Get the corresponding collector class of type {@link SystemSensorData}. * * @return the collector class. */ SystemSensorData get(); }