Changeset 495:0e9d648f3240
- Timestamp:
- 07/06/08 18:57:27 (3 months ago)
- Author:
- Leonard Ritter <contact@…>
- Branch:
- trunk
- Message:
-
adapted code to anonymous union in zzub_event_data
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r494
|
r495
|
|
| 96 | 96 | union = None |
| 97 | 97 | datatype = None |
| 98 | | for argname,argtype in zzub.EventData._fields_: |
| 99 | | if argname == '': # union |
| 100 | | union = argtype |
| 101 | | break |
| 102 | | for argname,argtype in union._fields_: |
| | 98 | ed = zzub.EventData() |
| | 99 | for argname in dir(ed): |
| 103 | 100 | if argname == membername: |
| 104 | | datatype = argtype |
| | 101 | datatype = getattr(ed, argname).__class__ |
| 105 | 102 | assert datatype, "couldn't find member %s in zzub_event_data_t" % membername |
| 106 | 103 | for argname,argtype in datatype._fields_: |
| … |
… |
|
| 191 | 188 | args = [] |
| 192 | 189 | if membername: |
| 193 | | specdata = getattr(data,'') |
| 194 | | specdata = getattr(specdata,membername) |
| | 190 | specdata = getattr(data,membername) |
| 195 | 191 | for argname in argnames: |
| 196 | 192 | args.append(getattr(specdata, argname)) |