{"action":"created","comment":{"url":"https://api.github.com/repos/martinisgroup/servers/pulls/comments/84116966","pull_request_review_id":4914860,"id":84116966,"diff_hunk":"@@ -0,0 +1,195 @@\n+\"\"\"\n+Wrappers for Agilent oscilloscopes.\n+\n+\"\"\"\n+\n+\n+from __future__ import absolute_import\n+import oscilloscope.wrappers as wrappers\n+import labrad.units as U\n+import struct\n+import numpy as np\n+from twisted.internet.defer import inlineCallbacks, returnValue\n+\n+\n+class AgilentDSOX4104AWrapper(wrappers.OscilloscopeWrapper):\n+    \"\"\"Wrapper for the Agilent DSO-X 4104A\n+\n+    We mostly override VISA string functions from the parent class, but in some\n+    cases we have to write complete self-contained methods. This file should be\n+    viewed along side the parent class in order to understand what's going on.\n+\n+    See programmer manual at:\n+        http://www.keysight.com/upload/cmc_upload/All/4000_series_prog_guide.pdf?&cc=US&lc=eng\n+    \"\"\"\n+\n+    # CHANNEL\n+","path":"oscilloscope/agilent.py","position":30,"original_position":27,"commit_id":"8f2c4b2e62cc43b72736b343d0eedef8558798a6","original_commit_id":"85b5fb82887405d3fde9eae472f0562f676fd733","user":{"login":"brooksfoxen","id":10713905,"avatar_url":"https://avatars.githubusercontent.com/u/10713905?v=3","gravatar_id":"","url":"https://api.github.com/users/brooksfoxen","html_url":"https://github.com/brooksfoxen","followers_url":"https://api.github.com/users/brooksfoxen/followers","following_url":"https://api.github.com/users/brooksfoxen/following{/other_user}","gists_url":"https://api.github.com/users/brooksfoxen/gists{/gist_id}","starred_url":"https://api.github.com/users/brooksfoxen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brooksfoxen/subscriptions","organizations_url":"https://api.github.com/users/brooksfoxen/orgs","repos_url":"https://api.github.com/users/brooksfoxen/repos","events_url":"https://api.github.com/users/brooksfoxen/events{/privacy}","received_events_url":"https://api.github.com/users/brooksfoxen/received_events","type":"User","site_admin":false},"body":"LGTM.  \r\n\r\nNote, the \"...you're trading...\" was a general 'you' and not directed at you personally.  =D","created_at":"2016-10-19T16:57:45Z","updated_at":"2016-10-19T17:00:18Z","html_url":"https://github.com/martinisgroup/servers/pull/377#discussion_r84116966","pull_request_url":"https://api.github.com/repos/martinisgroup/servers/pulls/377","_links":{"self":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/comments/84116966"},"html":{"href":"https://github.com/martinisgroup/servers/pull/377#discussion_r84116966"},"pull_request":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/377"}}},"pull_request":{"url":"https://api.github.com/repos/martinisgroup/servers/pulls/377","id":89306149,"html_url":"https://github.com/martinisgroup/servers/pull/377","diff_url":"https://github.com/martinisgroup/servers/pull/377.diff","patch_url":"https://github.com/martinisgroup/servers/pull/377.patch","issue_url":"https://api.github.com/repos/martinisgroup/servers/issues/377","number":377,"state":"open","locked":false,"title":"Introduce master oscilloscope server.","user":{"login":"DanielSank","id":4584456,"avatar_url":"https://avatars.githubusercontent.com/u/4584456?v=3","gravatar_id":"","url":"https://api.github.com/users/DanielSank","html_url":"https://github.com/DanielSank","followers_url":"https://api.github.com/users/DanielSank/followers","following_url":"https://api.github.com/users/DanielSank/following{/other_user}","gists_url":"https://api.github.com/users/DanielSank/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielSank/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielSank/subscriptions","organizations_url":"https://api.github.com/users/DanielSank/orgs","repos_url":"https://api.github.com/users/DanielSank/repos","events_url":"https://api.github.com/users/DanielSank/events{/privacy}","received_events_url":"https://api.github.com/users/DanielSank/received_events","type":"User","site_admin":false},"body":"Heck yes!\r\n\r\nSuggested review strategy:\r\n\r\n1. Review `oscilloscope_server.py` as this defines the user interface.\r\n\r\n1. Review `wrappers.py`, the base class for oscilloscope wrappers.\r\n\r\n1. Review `agilent.py`. There is only one scope implemented so far. All settings have been tested on a real scope.\r\n\r\nThe interfaces here are not guaranteed to be backward compatible with any of the other scope servers.\r\n","created_at":"2016-10-14T00:25:44Z","updated_at":"2016-10-19T17:00:18Z","closed_at":null,"merged_at":null,"merge_commit_sha":"1e894dcd1e9f11d84a6c3194333684a8f3e24f0e","assignee":{"login":"maffoo","id":129268,"avatar_url":"https://avatars.githubusercontent.com/u/129268?v=3","gravatar_id":"","url":"https://api.github.com/users/maffoo","html_url":"https://github.com/maffoo","followers_url":"https://api.github.com/users/maffoo/followers","following_url":"https://api.github.com/users/maffoo/following{/other_user}","gists_url":"https://api.github.com/users/maffoo/gists{/gist_id}","starred_url":"https://api.github.com/users/maffoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maffoo/subscriptions","organizations_url":"https://api.github.com/users/maffoo/orgs","repos_url":"https://api.github.com/users/maffoo/repos","events_url":"https://api.github.com/users/maffoo/events{/privacy}","received_events_url":"https://api.github.com/users/maffoo/received_events","type":"User","site_admin":false},"assignees":[{"login":"maffoo","id":129268,"avatar_url":"https://avatars.githubusercontent.com/u/129268?v=3","gravatar_id":"","url":"https://api.github.com/users/maffoo","html_url":"https://github.com/maffoo","followers_url":"https://api.github.com/users/maffoo/followers","following_url":"https://api.github.com/users/maffoo/following{/other_user}","gists_url":"https://api.github.com/users/maffoo/gists{/gist_id}","starred_url":"https://api.github.com/users/maffoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maffoo/subscriptions","organizations_url":"https://api.github.com/users/maffoo/orgs","repos_url":"https://api.github.com/users/maffoo/repos","events_url":"https://api.github.com/users/maffoo/events{/privacy}","received_events_url":"https://api.github.com/users/maffoo/received_events","type":"User","site_admin":false},{"login":"brooksfoxen","id":10713905,"avatar_url":"https://avatars.githubusercontent.com/u/10713905?v=3","gravatar_id":"","url":"https://api.github.com/users/brooksfoxen","html_url":"https://github.com/brooksfoxen","followers_url":"https://api.github.com/users/brooksfoxen/followers","following_url":"https://api.github.com/users/brooksfoxen/following{/other_user}","gists_url":"https://api.github.com/users/brooksfoxen/gists{/gist_id}","starred_url":"https://api.github.com/users/brooksfoxen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brooksfoxen/subscriptions","organizations_url":"https://api.github.com/users/brooksfoxen/orgs","repos_url":"https://api.github.com/users/brooksfoxen/repos","events_url":"https://api.github.com/users/brooksfoxen/events{/privacy}","received_events_url":"https://api.github.com/users/brooksfoxen/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/martinisgroup/servers/pulls/377/commits","review_comments_url":"https://api.github.com/repos/martinisgroup/servers/pulls/377/comments","review_comment_url":"https://api.github.com/repos/martinisgroup/servers/pulls/comments{/number}","comments_url":"https://api.github.com/repos/martinisgroup/servers/issues/377/comments","statuses_url":"https://api.github.com/repos/martinisgroup/servers/statuses/8f2c4b2e62cc43b72736b343d0eedef8558798a6","head":{"label":"martinisgroup:10-dry_oscilloscopes","ref":"10-dry_oscilloscopes","sha":"8f2c4b2e62cc43b72736b343d0eedef8558798a6","user":{"login":"martinisgroup","id":5026004,"avatar_url":"https://avatars.githubusercontent.com/u/5026004?v=3","gravatar_id":"","url":"https://api.github.com/users/martinisgroup","html_url":"https://github.com/martinisgroup","followers_url":"https://api.github.com/users/martinisgroup/followers","following_url":"https://api.github.com/users/martinisgroup/following{/other_user}","gists_url":"https://api.github.com/users/martinisgroup/gists{/gist_id}","starred_url":"https://api.github.com/users/martinisgroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinisgroup/subscriptions","organizations_url":"https://api.github.com/users/martinisgroup/orgs","repos_url":"https://api.github.com/users/martinisgroup/repos","events_url":"https://api.github.com/users/martinisgroup/events{/privacy}","received_events_url":"https://api.github.com/users/martinisgroup/received_events","type":"Organization","site_admin":false},"repo":{"id":21184808,"name":"servers","full_name":"martinisgroup/servers","owner":{"login":"martinisgroup","id":5026004,"avatar_url":"https://avatars.githubusercontent.com/u/5026004?v=3","gravatar_id":"","url":"https://api.github.com/users/martinisgroup","html_url":"https://github.com/martinisgroup","followers_url":"https://api.github.com/users/martinisgroup/followers","following_url":"https://api.github.com/users/martinisgroup/following{/other_user}","gists_url":"https://api.github.com/users/martinisgroup/gists{/gist_id}","starred_url":"https://api.github.com/users/martinisgroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinisgroup/subscriptions","organizations_url":"https://api.github.com/users/martinisgroup/orgs","repos_url":"https://api.github.com/users/martinisgroup/repos","events_url":"https://api.github.com/users/martinisgroup/events{/privacy}","received_events_url":"https://api.github.com/users/martinisgroup/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/martinisgroup/servers","description":"LabRAD servers","fork":false,"url":"https://api.github.com/repos/martinisgroup/servers","forks_url":"https://api.github.com/repos/martinisgroup/servers/forks","keys_url":"https://api.github.com/repos/martinisgroup/servers/keys{/key_id}","collaborators_url":"https://api.github.com/repos/martinisgroup/servers/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/martinisgroup/servers/teams","hooks_url":"https://api.github.com/repos/martinisgroup/servers/hooks","issue_events_url":"https://api.github.com/repos/martinisgroup/servers/issues/events{/number}","events_url":"https://api.github.com/repos/martinisgroup/servers/events","assignees_url":"https://api.github.com/repos/martinisgroup/servers/assignees{/user}","branches_url":"https://api.github.com/repos/martinisgroup/servers/branches{/branch}","tags_url":"https://api.github.com/repos/martinisgroup/servers/tags","blobs_url":"https://api.github.com/repos/martinisgroup/servers/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/martinisgroup/servers/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/martinisgroup/servers/git/refs{/sha}","trees_url":"https://api.github.com/repos/martinisgroup/servers/git/trees{/sha}","statuses_url":"https://api.github.com/repos/martinisgroup/servers/statuses/{sha}","languages_url":"https://api.github.com/repos/martinisgroup/servers/languages","stargazers_url":"https://api.github.com/repos/martinisgroup/servers/stargazers","contributors_url":"https://api.github.com/repos/martinisgroup/servers/contributors","subscribers_url":"https://api.github.com/repos/martinisgroup/servers/subscribers","subscription_url":"https://api.github.com/repos/martinisgroup/servers/subscription","commits_url":"https://api.github.com/repos/martinisgroup/servers/commits{/sha}","git_commits_url":"https://api.github.com/repos/martinisgroup/servers/git/commits{/sha}","comments_url":"https://api.github.com/repos/martinisgroup/servers/comments{/number}","issue_comment_url":"https://api.github.com/repos/martinisgroup/servers/issues/comments{/number}","contents_url":"https://api.github.com/repos/martinisgroup/servers/contents/{+path}","compare_url":"https://api.github.com/repos/martinisgroup/servers/compare/{base}...{head}","merges_url":"https://api.github.com/repos/martinisgroup/servers/merges","archive_url":"https://api.github.com/repos/martinisgroup/servers/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/martinisgroup/servers/downloads","issues_url":"https://api.github.com/repos/martinisgroup/servers/issues{/number}","pulls_url":"https://api.github.com/repos/martinisgroup/servers/pulls{/number}","milestones_url":"https://api.github.com/repos/martinisgroup/servers/milestones{/number}","notifications_url":"https://api.github.com/repos/martinisgroup/servers/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/martinisgroup/servers/labels{/name}","releases_url":"https://api.github.com/repos/martinisgroup/servers/releases{/id}","deployments_url":"https://api.github.com/repos/martinisgroup/servers/deployments","created_at":"2014-06-25T00:07:25Z","updated_at":"2016-09-19T01:32:48Z","pushed_at":"2016-10-19T00:40:27Z","git_url":"git://github.com/martinisgroup/servers.git","ssh_url":"git@github.com:martinisgroup/servers.git","clone_url":"https://github.com/martinisgroup/servers.git","svn_url":"https://github.com/martinisgroup/servers","homepage":"","size":49825,"stargazers_count":6,"watchers_count":6,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":118,"forks":6,"open_issues":118,"watchers":6,"default_branch":"master"}},"base":{"label":"martinisgroup:master","ref":"master","sha":"49a9a9e1642aad65e143f95cb420cb81e9362acc","user":{"login":"martinisgroup","id":5026004,"avatar_url":"https://avatars.githubusercontent.com/u/5026004?v=3","gravatar_id":"","url":"https://api.github.com/users/martinisgroup","html_url":"https://github.com/martinisgroup","followers_url":"https://api.github.com/users/martinisgroup/followers","following_url":"https://api.github.com/users/martinisgroup/following{/other_user}","gists_url":"https://api.github.com/users/martinisgroup/gists{/gist_id}","starred_url":"https://api.github.com/users/martinisgroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinisgroup/subscriptions","organizations_url":"https://api.github.com/users/martinisgroup/orgs","repos_url":"https://api.github.com/users/martinisgroup/repos","events_url":"https://api.github.com/users/martinisgroup/events{/privacy}","received_events_url":"https://api.github.com/users/martinisgroup/received_events","type":"Organization","site_admin":false},"repo":{"id":21184808,"name":"servers","full_name":"martinisgroup/servers","owner":{"login":"martinisgroup","id":5026004,"avatar_url":"https://avatars.githubusercontent.com/u/5026004?v=3","gravatar_id":"","url":"https://api.github.com/users/martinisgroup","html_url":"https://github.com/martinisgroup","followers_url":"https://api.github.com/users/martinisgroup/followers","following_url":"https://api.github.com/users/martinisgroup/following{/other_user}","gists_url":"https://api.github.com/users/martinisgroup/gists{/gist_id}","starred_url":"https://api.github.com/users/martinisgroup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinisgroup/subscriptions","organizations_url":"https://api.github.com/users/martinisgroup/orgs","repos_url":"https://api.github.com/users/martinisgroup/repos","events_url":"https://api.github.com/users/martinisgroup/events{/privacy}","received_events_url":"https://api.github.com/users/martinisgroup/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/martinisgroup/servers","description":"LabRAD servers","fork":false,"url":"https://api.github.com/repos/martinisgroup/servers","forks_url":"https://api.github.com/repos/martinisgroup/servers/forks","keys_url":"https://api.github.com/repos/martinisgroup/servers/keys{/key_id}","collaborators_url":"https://api.github.com/repos/martinisgroup/servers/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/martinisgroup/servers/teams","hooks_url":"https://api.github.com/repos/martinisgroup/servers/hooks","issue_events_url":"https://api.github.com/repos/martinisgroup/servers/issues/events{/number}","events_url":"https://api.github.com/repos/martinisgroup/servers/events","assignees_url":"https://api.github.com/repos/martinisgroup/servers/assignees{/user}","branches_url":"https://api.github.com/repos/martinisgroup/servers/branches{/branch}","tags_url":"https://api.github.com/repos/martinisgroup/servers/tags","blobs_url":"https://api.github.com/repos/martinisgroup/servers/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/martinisgroup/servers/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/martinisgroup/servers/git/refs{/sha}","trees_url":"https://api.github.com/repos/martinisgroup/servers/git/trees{/sha}","statuses_url":"https://api.github.com/repos/martinisgroup/servers/statuses/{sha}","languages_url":"https://api.github.com/repos/martinisgroup/servers/languages","stargazers_url":"https://api.github.com/repos/martinisgroup/servers/stargazers","contributors_url":"https://api.github.com/repos/martinisgroup/servers/contributors","subscribers_url":"https://api.github.com/repos/martinisgroup/servers/subscribers","subscription_url":"https://api.github.com/repos/martinisgroup/servers/subscription","commits_url":"https://api.github.com/repos/martinisgroup/servers/commits{/sha}","git_commits_url":"https://api.github.com/repos/martinisgroup/servers/git/commits{/sha}","comments_url":"https://api.github.com/repos/martinisgroup/servers/comments{/number}","issue_comment_url":"https://api.github.com/repos/martinisgroup/servers/issues/comments{/number}","contents_url":"https://api.github.com/repos/martinisgroup/servers/contents/{+path}","compare_url":"https://api.github.com/repos/martinisgroup/servers/compare/{base}...{head}","merges_url":"https://api.github.com/repos/martinisgroup/servers/merges","archive_url":"https://api.github.com/repos/martinisgroup/servers/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/martinisgroup/servers/downloads","issues_url":"https://api.github.com/repos/martinisgroup/servers/issues{/number}","pulls_url":"https://api.github.com/repos/martinisgroup/servers/pulls{/number}","milestones_url":"https://api.github.com/repos/martinisgroup/servers/milestones{/number}","notifications_url":"https://api.github.com/repos/martinisgroup/servers/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/martinisgroup/servers/labels{/name}","releases_url":"https://api.github.com/repos/martinisgroup/servers/releases{/id}","deployments_url":"https://api.github.com/repos/martinisgroup/servers/deployments","created_at":"2014-06-25T00:07:25Z","updated_at":"2016-09-19T01:32:48Z","pushed_at":"2016-10-19T00:40:27Z","git_url":"git://github.com/martinisgroup/servers.git","ssh_url":"git@github.com:martinisgroup/servers.git","clone_url":"https://github.com/martinisgroup/servers.git","svn_url":"https://github.com/martinisgroup/servers","homepage":"","size":49825,"stargazers_count":6,"watchers_count":6,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":118,"forks":6,"open_issues":118,"watchers":6,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/377"},"html":{"href":"https://github.com/martinisgroup/servers/pull/377"},"issue":{"href":"https://api.github.com/repos/martinisgroup/servers/issues/377"},"comments":{"href":"https://api.github.com/repos/martinisgroup/servers/issues/377/comments"},"review_comments":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/377/comments"},"review_comment":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/martinisgroup/servers/pulls/377/commits"},"statuses":{"href":"https://api.github.com/repos/martinisgroup/servers/statuses/8f2c4b2e62cc43b72736b343d0eedef8558798a6"}}}}
{"actor":{"display_login":"brooksfoxen"}}