{"action":"opened","issue":{"url":"https://api.github.com/repos/myriadrf/LimeSuite/issues/47","repository_url":"https://api.github.com/repos/myriadrf/LimeSuite","labels_url":"https://api.github.com/repos/myriadrf/LimeSuite/issues/47/labels{/name}","comments_url":"https://api.github.com/repos/myriadrf/LimeSuite/issues/47/comments","events_url":"https://api.github.com/repos/myriadrf/LimeSuite/issues/47/events","html_url":"https://github.com/myriadrf/LimeSuite/issues/47","id":154136346,"number":47,"title":"Simultaneous support for both CyAPI and libusb","user":{"login":"guruofquality","id":184117,"avatar_url":"https://avatars.githubusercontent.com/u/184117?v=3","gravatar_id":"","url":"https://api.github.com/users/guruofquality","html_url":"https://github.com/guruofquality","followers_url":"https://api.github.com/users/guruofquality/followers","following_url":"https://api.github.com/users/guruofquality/following{/other_user}","gists_url":"https://api.github.com/users/guruofquality/gists{/gist_id}","starred_url":"https://api.github.com/users/guruofquality/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guruofquality/subscriptions","organizations_url":"https://api.github.com/users/guruofquality/orgs","repos_url":"https://api.github.com/users/guruofquality/repos","events_url":"https://api.github.com/users/guruofquality/events{/privacy}","received_events_url":"https://api.github.com/users/guruofquality/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/myriadrf/LimeSuite/labels/low%20priority","name":"low priority","color":"d4c5f9"},{"url":"https://api.github.com/repos/myriadrf/LimeSuite/labels/question","name":"question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-05-11T00:32:23Z","updated_at":"2016-05-11T00:32:23Z","closed_at":null,"body":"This is more of a thought at the moment and note for the future: The current ConnectionSTREAM has a a dual implementation for both libusb and CyAPI separated by a lot of `#ifdef __unix__`.\r\n\r\n* However it should be the case that any platform could be built for either api regardless. The ifdefs should reflect the API or rather we should have two separate ConnectionSTREAM<api> implementations for each rather than all of the ifdefs in one single implementation.\r\n* And further, the way connection registry is handled, both ConnectionSTREAMLibUSB and ConnectionSTREAMCyAPI could be compiled at the same time -- Bladerf actually does this support for both as a redundancy when one usb library is causing a problem."}}