summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Torri <storri@users.sourceforge.net>2002-11-03 23:07:14 +0000
committerStephen Torri <storri@users.sourceforge.net>2002-11-03 23:07:14 +0000
commitd10688862e58c6c169935e127e90ee3c553c5ff4 (patch)
treef5f28afc91f647feca733634b6142faabdf7f9ad
parent3018a1d3fda698707e2610e2a6d11ace633fc3ca (diff)
downloadxine-lib-d10688862e58c6c169935e127e90ee3c553c5ff4.tar.gz
xine-lib-d10688862e58c6c169935e127e90ee3c553c5ff4.tar.bz2
Added newer interface to xine_health_check
CVS patchset: 3175 CVS date: 2002/11/03 23:07:14
-rw-r--r--include/xine.h.in11
-rw-r--r--src/xine-utils/xine_check.c72
-rw-r--r--src/xine-utils/xine_check.h16
3 files changed, 46 insertions, 53 deletions
diff --git a/include/xine.h.in b/include/xine.h.in
index 83eaf4f85..5ebcb24f4 100644
--- a/include/xine.h.in
+++ b/include/xine.h.in
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xine.h.in,v 1.32 2002/11/02 02:55:46 storri Exp $
+ * $Id: xine.h.in,v 1.33 2002/11/03 23:07:14 storri Exp $
*
* public xine-lib (libxine) interface and documentation
*
@@ -638,6 +638,15 @@ typedef struct {
#define XINE_HEALTH_CHECK_OK 0
#define XINE_HEALTH_CHECK_FAIL 1
#define XINE_HEALTH_CHECK_UNSUPPORTED 2
+#define XINE_HEALTH_CHECK_NO_SUCH_CHECK 3
+
+#define CHECK_KERNEL 0
+#define CHECK_MTRR 1
+#define CHECK_CDROM 2
+#define CHECK_DVDROM 3
+#define CHECK_DMA 4
+#define CHECK_X 5
+#define CHECK_XV 6
struct xine_health_check_s {
int status;
diff --git a/src/xine-utils/xine_check.c b/src/xine-utils/xine_check.c
index 946e5c7eb..1755d5ac6 100644
--- a/src/xine-utils/xine_check.c
+++ b/src/xine-utils/xine_check.c
@@ -65,57 +65,37 @@
xine_health_check_t*
-xine_health_check (xine_health_check_t* hc) {
-
-#if 0
- if (xine_health_check_os() < 0) {
- retval = -1;
+xine_health_check (xine_health_check_t* hc, int check_num) {
+
+ switch(check_num) {
+ case CHECK_KERNEL:
+ hc = xine_health_check_kernel (hc);
+ break;
+ case CHECK_MTRR:
+ hc = xine_health_check_mtrr (hc);
+ break;
+ case CHECK_CDROM:
+ hc = xine_health_check_cdrom (hc);
+ break;
+ case CHECK_DVDROM:
+ hc = xine_health_check_dvdrom (hc);
+ break;
+ case CHECK_DMA:
+ hc = xine_health_check_dma (hc);
+ break;
+ case CHECK_X:
+ hc = xine_health_check_x (hc);
+ break;
+ case CHECK_XV:
+ hc = xine_health_check_xv (hc);
+ break;
+ default:
+ hc->status = XINE_HEALTH_CHECK_NO_SUCH_CHECK;
}
-#endif
-
- hc = xine_health_check_kernel (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
-#ifdef ARCH_X86
- hc = xine_health_check_mtrr (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-#endif /* ARCH_X86 */
-
- hc = xine_health_check_cdrom (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_dvdrom (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_dma (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_x (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_xv (hc);
return hc;
}
-int
-xine_health_check_os(void)
-{
- return 0;
-}
-
xine_health_check_t*
xine_health_check_kernel (xine_health_check_t* hc) {
struct utsname kernel;
diff --git a/src/xine-utils/xine_check.h b/src/xine-utils/xine_check.h
index 8a3e4cc66..150ee3b89 100644
--- a/src/xine-utils/xine_check.h
+++ b/src/xine-utils/xine_check.h
@@ -6,6 +6,15 @@
#define XINE_HEALTH_CHECK_OK 0
#define XINE_HEALTH_CHECK_FAIL 1
#define XINE_HEALTH_CHECK_UNSUPPORTED 2
+#define XINE_HEALTH_CHECK_NO_SUCH_CHECK 3
+
+#define CHECK_KERNEL 0
+#define CHECK_MTRR 1
+#define CHECK_CDROM 2
+#define CHECK_DVDROM 3
+#define CHECK_DMA 4
+#define CHECK_X 5
+#define CHECK_XV 6
struct xine_health_check_s {
int status;
@@ -30,12 +39,7 @@ typedef struct {
* cdrom_dev = Name of the device link for the cdrom drive (e.g. /dev/cdrom)
* dvd_dev = Name of the device link for the dvd drive (e.g. /dev/dvd)
*/
-xine_health_check_t* xine_health_check(xine_health_check_t*);
-
-#if 0
-/* Get OS information */
-xine_health_check_t* xine_health_check_os(void);
-#endif
+xine_health_check_t* xine_health_check(xine_health_check_t*, int check_num);
/* Get Kernel information */
xine_health_check_t* xine_health_check_kernel(xine_health_check_t*);