Changes in / [9c0f158:f08c560] in mainline


Ignore:
Location:
uspace/lib/usb
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usb/include/usb/classes/hidparser.h

    r9c0f158 rf08c560  
    207207    const usb_hid_report_in_callbacks_t *callbacks, void *arg);
    208208
    209 size_t usb_hid_report_input_length(const usb_hid_report_parser_t *parser,
     209int usb_hid_report_input_length(const usb_hid_report_parser_t *parser,
    210210        usb_hid_report_path_t *path, int flags);
    211211
     
    223223void usb_hid_report_set_last_item(usb_hid_report_path_t *usage_path, int32_t tag, int32_t data);
    224224int usb_hid_report_compare_usage_path(usb_hid_report_path_t *report_path, usb_hid_report_path_t *path, int flags);
    225 usb_hid_report_path_t *usb_hid_report_path_clone(usb_hid_report_path_t *usage_path);
    226 
    227 
    228 // output API
    229 /** Allocates output report buffer*/
    230 uint8_t *usb_hid_report_output(usb_hid_report_parser_t *parser);
    231 /** Frees output report buffer*/
    232 void usb_hid_report_output_free(uint8_t *output);
    233 
    234 /** Returns size of output for given usage path */
    235 size_t usb_hid_report_output_size(usb_hid_report_parser_t *parser,
    236                                   usb_hid_report_path_t *path, int flags);
    237 /** Updates the output report buffer by translated given data */
    238 int usb_hid_report_output_translate(usb_hid_report_parser_t *parser,
    239                                     usb_hid_report_path_t *path, int flags,
    240                                     uint8_t *buffer, size_t size,
    241                                     int32_t *data, size_t data_size);
     225int     usb_hid_report_path_clone(usb_hid_report_path_t *new_usage_path, usb_hid_report_path_t *usage_path);
     226
     227
     228// output
     229//      - funkce co vrati cesty poli v output reportu
     230//      - funkce co pro danou cestu nastavi data
     231//      - finalize
     232
    242233#endif
    243234/**
  • uspace/lib/usb/src/hidparser.c

    r9c0f158 rf08c560  
    164164                                        // store current usage path
    165165                                        report_item->usage_path = usage_path;
     166
     167                                        // new current usage path
     168                                        tmp_usage_path = usb_hid_report_path();
    166169                                       
    167                                         // clone path to the new one
    168                                         tmp_usage_path = usb_hid_report_path_clone(usage_path);
     170                                        // copy old path to the new one
     171                                        usb_hid_report_path_clone(tmp_usage_path, usage_path);
    169172
    170173                                        // swap
     
    793796}
    794797
    795 size_t usb_hid_report_input_length(const usb_hid_report_parser_t *parser,
     798int usb_hid_report_input_length(const usb_hid_report_parser_t *parser,
    796799        usb_hid_report_path_t *path, int flags)
    797800{       
     
    946949                        break;
    947950
    948                 /* compare with only the end of path*/
     951                /* given path must be the end of the report one*/
    949952                case USB_HID_PATH_COMPARE_END:
    950953                                report_link = report_path->link.prev;
     
    10161019
    10171020/**
    1018  * Clone content of given usage path to the new one
    1019  *
    1020  */
    1021 usb_hid_report_path_t *usb_hid_report_path_clone(usb_hid_report_path_t *usage_path)
     1021 *
     1022 */
     1023int     usb_hid_report_path_clone(usb_hid_report_path_t *new_usage_path, usb_hid_report_path_t *usage_path)
    10221024{
    10231025        usb_hid_report_usage_path_t *path_item;
    10241026        link_t *path_link;
    1025         usb_hid_report_path_t *new_usage_path = usb_hid_report_path ();
    1026 
    1027         if(new_usage_path == NULL){
    1028                 return NULL;
    1029         }
     1027
    10301028       
    10311029        if(list_empty(&usage_path->link)){
    1032                 return new_usage_path;
     1030                return EOK;
    10331031        }
    10341032
     
    10411039        }
    10421040
    1043         return new_usage_path;
     1041        return EOK;
    10441042}
    10451043
Note: See TracChangeset for help on using the changeset viewer.