root/vtcross/trunk/src/include/vtcross/containers.h @ 296

Revision 296, 1.6 KB (checked in by wrodgers, 15 years ago)

Minor modifications to support new XML features

Line 
1/* Virginia Tech Cognitive Radio Open Source Systems
2 * Virginia Tech, 2009
3 *
4 * LICENSE INFORMATION GOES HERE
5 */
6
7/* This header contains commonly used data container structs in VT-CROSS
8 * systems.
9 */
10
11#ifndef CONTAINERS_H
12#define CONTAINERS_H
13
14
15#include <netdb.h>
16#include <stdint.h>
17#include <string>
18
19
20/* TODO
21 *
22 */
23struct Radio_Info {
24    uint32_t numUtilities;
25    uint32_t numParameters;
26    uint32_t numObservables;
27    uint32_t policy_engine;
28    uint32_t policy_socket;
29    uint32_t ce_socket;
30};
31
32
33/* TODO
34 *
35 */
36struct Utility {
37    std::string name;
38    std::string units;
39    std::string goal;
40    float target;
41    float value;
42};
43
44
45/* TODO
46 *
47 */
48struct Affect {
49    Utility *u;
50    std::string relation;
51};
52
53
54/* TODO
55 *
56 */
57struct Parameter {
58    std::string name;
59    std::string units;
60    float min;
61    uint32_t numAffects;
62    Affect affection_list[10];
63    float max;
64    float step;
65    float value;
66};
67
68
69/* TODO
70 *
71 */
72struct Observable {
73    std::string name;
74    Affect affection_list[10];
75    uint32_t numAffects;
76    float value;
77};
78
79
80/* TODO
81 *
82 */
83struct Service {
84    std::string name;
85    int32_t socketFD;
86    int32_t componentID;
87    uint16_t num_conds;
88    //bool cond_flag;
89    std::string parameter;
90    std::string input[10];
91    std::string output[10];
92};
93
94
95/* TODO
96 *
97 */
98struct Mission {
99    std::string name;
100    uint32_t missionID;
101    uint32_t numServices;
102    Service *services;
103    std::string input[10];
104    std::string output[10];
105};
106
107/* Registration data for Cognitive Engines for use in communication
108 */
109struct CE_Reg {
110    int32_t ID_num;
111    //sockaddr_in *sock_ptr;
112    //socklen_t sock_len;
113    int32_t FD;
114};
115
116#endif
Note: See TracBrowser for help on using the browser.