Subversion Repositories Projects

Rev

Rev 222 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
206 ligi 1
/*********************************************
2
 *                                            
3
 * class representing the DebugData Structure
4
 *                                            
5
 * Author:        Marcus -LiGi- Bueschleb    
6
 *
7
 * see README for further Infos
8
 *
9
 ********************************************/
10
 
11
package org.ligi.ufo;
12
 
13
public class MKDebugData
14
{
15
 
16
    public int[] analog;
17
    public String[] names;
18
    public boolean[] got_name;
19
    public int motor_complete=-1;
20
 
21
 
22
    private int i;
23
 
24
    public int motor_val(int id) {      return analog[12+id];    }
25
    public int nick_int() {     return analog[0];    }
26
    public int roll_int() {     return analog[1];    }
27
    public int accnick() {      return analog[2];    }
28
    public int accroll() {      return analog[3];    }
29
 
30
 
31
    public int UBatt() {        return analog[9];    }
32
    public int SenderOkay() {   return analog[10];    }
33
 
34
 
35
 
36
 
37
    public MKDebugData()
38
    {
39
        names=new String[32];
40
        analog=new int[32];
41
        got_name=new boolean[32];
42
        for (i=0;i<32;i++)
43
            {
44
            analog[i]=-1;
45
            names[i]="-#"+i+"->";
46
            got_name[i]=false;
47
            }
48
 
49
    }
50
 
51
    public void set_names_by_mk_data(int[] in_arr)
52
    {
53
        int id=in_arr[0];
54
        names[id]="";
55
        for (i=0;i<16;i++)
56
            {
57
                if ((char)in_arr[i+1]!=' ')
58
                    names[id]+=(char)in_arr[i+1];
59
                got_name[id]=true;
60
            }
61
        names[id]+=":";
62
    }
63
 
64
    public void set_by_mk_data(int[] in_arr,MKVersion version)
65
    {
66
 
67
        for (i=0;i<32;i++)
68
            {
69
 
70
                analog[i]=(int)((in_arr[3+i*2]<<8) | in_arr[2+i*2]);
71
                if ((analog[i]&(1<<15))!=0)
72
                    analog[i]=-(analog[i]&(0xFFFF-1))^(0xFFFF-1);
73
            }
74
 
75
        motor_complete=motor_val(0)+motor_val(1)+motor_val(2)+motor_val(3);
76
 
77
 
78
    }
79
 
80
 
81
 
82
}