| … | … | @@ -42,7 +42,28 @@ namespace opencog |
| 42 | 42 | * |
| 43 | 43 | * At this time, this handles only the simplest kernel interfaes. |
| 44 | 44 | * This will need to be extended as experience grows. |
| 45 | * |
| 46 | * The code here takes OpenCL function declaration prototypes of the form |
| 47 | * |
| 48 | * kernel void vec_add(global double *sum, |
| 49 | * global const double *a, |
| 50 | * global const double *b, |
| 51 | * const unsigned long sz) |
| 52 | * |
| 53 | * and converts them to the Atomese expressions |
| 54 | * |
| 55 | * (Section |
| 56 | * (ItemNode "vec_add") |
| 57 | * (ConnectorSeq |
| 58 | * (Connector (Type 'FloatValue) (Sex "output")) |
| 59 | * (Connector (Type 'FloatValue) (Sex "input")) |
| 60 | * (Connector (Type 'FloatValue) (Sex "input")) |
| 61 | * (Connector (Type 'FloatValue) (Sex "scalar")))) |
| 62 | * |
| 63 | * See the notes in Design-C.md on why this is a good idea, and |
| 64 | * Design-E.md as to why this is a bad idea. |
| 45 | 65 | */ |
| 66 | |
| 46 | 67 | class GenIDL |
| 47 | 68 | { |
| 48 | 69 | protected: |