summaryrefslogtreecommitdiff
path: root/tests/in/com.pelagicore.ivi.tuner.qface
blob: 725d4d5f9fa8ec488e952c0a6cae7780a05bff40 (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
78
79
module com.pelagicore.ivi.tuner 1.0;


interface BaseTuner {
    int baseValue;
}


/** Service Tuner */
@service: true
@interface: true
@config: {private: true, b: B, c: C}
@data: [1,2,3]
interface Tuner extends BaseTuner {
    /** property currentStation */
    readonly Station currentStation;
    /** the default station, which never changes */
    const Station defaultStation;
    /** operation nextStation */
    void nextStation();
    /** operation numStations */
    int numStations() const;
    /** operation previousStation */
    void previousStation();
    /** operation updateCurrentStation */
    void updateCurrentStation(int stationId);

    list<int> primitiveList;
    list<Station> complexList;
    model<int> primitiveModel;
    model<Station> complexModel;

    signal scanFinished();
    signal broadcastMessage(string message);

    TunerExtension extension;

    Feature feature;
}

interface TunerExtension {
}

/** enum State */
enum State {
    /** value State.Null */
    Null=0,
    /** value State.Loading */
    Loading=1,
    /** value State.Ready */
    Ready=2,
    /** value State.Error */
    Error=3
}

/** enum Waveband */
@default: {value: FM}
enum Waveband {
    /** value Waveband.FM */
    FM=0,
    /** value Waveband.AM */
    AM=1
}

flag Feature {
    Mono = 0x1,
    Stereo = 0x2,
}

/** struct Station */
struct Station {
    /** member stationId */
    int stationId;
    /** member name */
    string name;
}