summaryrefslogtreecommitdiffstats
path: root/src/lmsensor.h
blob: 79e8aafb9a658fffaab2639a04ad76856911ae34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/***************************************************************************
                          lmsensor.h  -  description
                             -------------------
    begin                : Mon Aug 6 2001
    copyright            : (C) 2001 by Miguel Novas
    email                : michaell@teleline.es
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef LMSENSOR_H
#define LMSENSOR_H

#include <ntqobject.h>
#include <tdeconfig.h>
#include <ntqstring.h>
#include <ntqcstring.h>

#include <sensors/sensors.h>
#include "sensor.h"


class LMSensorsList;

/**
  *@author Miguel Novas
  */

class LMSensor : public Sensor  {
  Q_OBJECT

  friend class LMSensorsChip;

public:

  LMSensor(SensorsList *parent=0);
	~LMSensor();

public slots:

  void updateValue();

protected:

  double calculateIdealValue();

#if SENSORS_API_VERSION < 0x400 /* libsensor 3 code */
  bool init(const sensors_feature_data **data, int *nr1,int *nr2);
#else
  bool init(const sensors_feature **data, int *nr1,int *nr2);
#endif
  const sensors_chip_name *getChipName();

private:

   int        feature;
   SensorType type;
   TQString    description;
   double     val;
   double     valPrevious;
   double     compensation;
   double     multiplicator;
   double     valMax;
   double     valMin;
   double     valIdeal;
   bool       monitorize;
   double readSensorValue();
};

#endif