{"action":"created","issue":{"url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/46","repository_url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface","labels_url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/46/comments","events_url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/46/events","html_url":"https://github.com/ADVRHumanoids/XBotInterface/issues/46","id":329149287,"node_id":"MDU6SXNzdWUzMjkxNDkyODc=","number":46,"title":"Zero-config setup of XbotInterface","user":{"login":"alaurenzi","id":22152172,"node_id":"MDQ6VXNlcjIyMTUyMTcy","avatar_url":"https://avatars2.githubusercontent.com/u/22152172?v=4","gravatar_id":"","url":"https://api.github.com/users/alaurenzi","html_url":"https://github.com/alaurenzi","followers_url":"https://api.github.com/users/alaurenzi/followers","following_url":"https://api.github.com/users/alaurenzi/following{/other_user}","gists_url":"https://api.github.com/users/alaurenzi/gists{/gist_id}","starred_url":"https://api.github.com/users/alaurenzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alaurenzi/subscriptions","organizations_url":"https://api.github.com/users/alaurenzi/orgs","repos_url":"https://api.github.com/users/alaurenzi/repos","events_url":"https://api.github.com/users/alaurenzi/events{/privacy}","received_events_url":"https://api.github.com/users/alaurenzi/received_events","type":"User","site_admin":false},"labels":[{"id":611498311,"node_id":"MDU6TGFiZWw2MTE0OTgzMTE=","url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":{"login":"alaurenzi","id":22152172,"node_id":"MDQ6VXNlcjIyMTUyMTcy","avatar_url":"https://avatars2.githubusercontent.com/u/22152172?v=4","gravatar_id":"","url":"https://api.github.com/users/alaurenzi","html_url":"https://github.com/alaurenzi","followers_url":"https://api.github.com/users/alaurenzi/followers","following_url":"https://api.github.com/users/alaurenzi/following{/other_user}","gists_url":"https://api.github.com/users/alaurenzi/gists{/gist_id}","starred_url":"https://api.github.com/users/alaurenzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alaurenzi/subscriptions","organizations_url":"https://api.github.com/users/alaurenzi/orgs","repos_url":"https://api.github.com/users/alaurenzi/repos","events_url":"https://api.github.com/users/alaurenzi/events{/privacy}","received_events_url":"https://api.github.com/users/alaurenzi/received_events","type":"User","site_admin":false},"assignees":[{"login":"alaurenzi","id":22152172,"node_id":"MDQ6VXNlcjIyMTUyMTcy","avatar_url":"https://avatars2.githubusercontent.com/u/22152172?v=4","gravatar_id":"","url":"https://api.github.com/users/alaurenzi","html_url":"https://github.com/alaurenzi","followers_url":"https://api.github.com/users/alaurenzi/followers","following_url":"https://api.github.com/users/alaurenzi/following{/other_user}","gists_url":"https://api.github.com/users/alaurenzi/gists{/gist_id}","starred_url":"https://api.github.com/users/alaurenzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alaurenzi/subscriptions","organizations_url":"https://api.github.com/users/alaurenzi/orgs","repos_url":"https://api.github.com/users/alaurenzi/repos","events_url":"https://api.github.com/users/alaurenzi/events{/privacy}","received_events_url":"https://api.github.com/users/alaurenzi/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2018-06-04T17:31:55Z","updated_at":"2018-06-11T12:24:09Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Today I worked towards the goal of making it possible to run all our architecture without the use of external configuration files. As you know, all our classes make use of a `path_to_config_file` in order to run the constructor (or factory method). This works nicely, but I believe that alternative ways should be supported as well. For instance, ROS developers are used to loading every parameters that they need on a *parameter server*, which has the advantage of being **distributed** (while the paths that we list on a YAML file are **local** to the machine), and of being a standard in the community.\r\n\r\nMy idea is to define a class that wraps all that is needed to build our classes (XBot/Model/RobotInterface), and I provisionally call it `XBot::ConfigOptions`. This class can be constructed from config file, from parameter server, programmatically, or in any other way. Then, I define constructors for our classes that only use the  `XBot::ConfigOptions` class as input.\r\n\r\nThis class is also meant to replace (or, better, to include) our `AnyMap`.\r\n\r\nA first version is working on the branch `config_refactor` of `XBotInterface`, `ModelInterfaceRBDL`, `RobotInterfaceROS` and `XBotCore`.\r\n\r\nFeedback is appreciated!\r\n@liesrock  @pepperig @EnricoMingo "},"comment":{"url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/comments/396225210","html_url":"https://github.com/ADVRHumanoids/XBotInterface/issues/46#issuecomment-396225210","issue_url":"https://api.github.com/repos/ADVRHumanoids/XBotInterface/issues/46","id":396225210,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NjIyNTIxMA==","user":{"login":"liesrock","id":1098646,"node_id":"MDQ6VXNlcjEwOTg2NDY=","avatar_url":"https://avatars1.githubusercontent.com/u/1098646?v=4","gravatar_id":"","url":"https://api.github.com/users/liesrock","html_url":"https://github.com/liesrock","followers_url":"https://api.github.com/users/liesrock/followers","following_url":"https://api.github.com/users/liesrock/following{/other_user}","gists_url":"https://api.github.com/users/liesrock/gists{/gist_id}","starred_url":"https://api.github.com/users/liesrock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liesrock/subscriptions","organizations_url":"https://api.github.com/users/liesrock/orgs","repos_url":"https://api.github.com/users/liesrock/repos","events_url":"https://api.github.com/users/liesrock/events{/privacy}","received_events_url":"https://api.github.com/users/liesrock/received_events","type":"User","site_admin":false},"created_at":"2018-06-11T12:24:09Z","updated_at":"2018-06-11T12:24:09Z","author_association":"CONTRIBUTOR","body":"Nice idea: I suggest @alaurenzi and @pepperig to run some tests in the devel branch and to close this eventually."}}
{"actor":{"display_login":"liesrock"}}