// Use this for initialization void Start() { toolboxNodes = GameObject.FindGameObjectWithTag("testCubeToolbox").GetComponent <ObjectCollectionNodes>(); toolbox = GameObject.FindGameObjectWithTag("testCubeToolbox"); NodesOutside = new List <CollectionNode>(); }
public override void OnInspectorGUI() { // Draw the default base.OnInspectorGUI(); // Place the button at the bottom ObjectCollection myScript = (ObjectCollection)target; if (GUILayout.Button("Update Collection")) { myScript.UpdateCollection(); } ObjectCollectionNodes myNodeScript = (ObjectCollectionNodes)target; if (GUILayout.Button("Update Collection")) { myNodeScript.UpdateCollection(); } }
// Use this for initialization void Start() { //test, load all the scripts from RosCommunication Folder //scriptObjects = Resources.LoadAll("RosTopicSubscriber",typeof(UnityEditor.MonoScript)); //UnityEditor.MonoScript[] monoScripts = (UnityEditor.MonoScript[])Resources.LoadAll("RosTopicSubscriber",typeof(UnityEditor.MonoScript)); //Subscriber<Message>[] subscriber = Resources.LoadAll<Subscriber<Message>>("RosTopicSubscriber"); Subscriber <Message> subscriber = Resources.Load <Subscriber <Message> >("RosTopicSubscriber/ClockSubscriber.cs"); //MonoScript[] scripts = (MonoScript[])Object.FindObjectsOfTypeIncludingAssets(typeof(MonoScript)); //ClockSubscriber cs = Resources.Load<ClockSubscriber>("RosTopicSubscriber/ClockSubscriber"); //ClockSubscriber cs = Resources.Load("RosTopicSubscriber/ClockSubscriber") as ClockSubscriber; //var sub = Resources.LoadAll("RosTopicSubscriber", typeof(UnityEditor.MonoScript)).Cast<Subscriber<Message>>().ToArray(); //Debug.Log("---Größe der scripts array:" + scriptObjects.Length); //Debug.Log("---Größe der subscriber array array:" + subscriber.Length); //Debug.Log("---Größe der subscriber array array:" + sub.Length); //Debug.Log("---SubscriberTopic:" + cs.Topic); //Debug.Log("---SubscriberTopic:" + cs.Topic); /* * foreach (var s in scriptObjects) * { * * Debug.Log(s.name); * Debug.Log(s.GetType()); * Type t = s.GetType(); * //Debug.Log(typeof(s)); * Debug.Log(t); * Debug.Log("Members:"); * System.Reflection.MemberInfo[] memberInfo = t.GetMembers(); * foreach (System.Reflection.MemberInfo mInfo in memberInfo) * { * Debug.Log(mInfo.ToString()); * } */ /* * if (s.GetClass() != null && s.GetClass().IsSubclassOf(typeof(Subscriber<Message>))) * { * * } */ /* * UnityEditor.MonoScript ms = (UnityEditor.MonoScript)s; * //Subscriber <Message> msSub = (Subscriber<Message>)s; * * Debug.Log("---Class:" + ms.GetClass()); * * UnityEngine.ScriptableObject newScript = (UnityEngine.ScriptableObject)ScriptableObject.CreateInstance(ms.GetClass()); * * Type t2 = ms.GetType(); * //Debug.Log(typeof(s)); * Debug.Log("Members:"); * System.Reflection.MemberInfo[] memberInfo2 = t2.GetMembers(); * foreach (System.Reflection.MemberInfo mInfo2 in memberInfo2) * { * Debug.Log(mInfo2.ToString()); * } * */ //scripts.AddLast(ms.GetClass()); //scripts.AddLast(msSub); //Debug.Log("---TOPIC OF SCRIPT:" + msSub.Topic); /* * Subscriber<Messages> ms = (Subscriber<Messages>)s; * Debug.Log(ms.GetClass()); * ClockSubscriber cs = (ClockSubscriber)ms; * cs.T * //s.GetType ms; = (UnityEditor.MonoScript)s; * * * } */ script = GameObject.FindGameObjectWithTag("testCubeToolbox").GetComponent <ObjectCollectionNodes>(); nodeManager = GameObject.Find("Rviz2AR_ToolBox").GetComponent <NodeManager>(); //Get all the Nodes GetComponent <RosConnector>().RosSocket.CallService <rosapi.NodesRequest, rosapi.NodesResponse>("/rosapi/nodes", ServiceCallHandler, new rosapi.NodesRequest()); //Get all the Topics GetComponent <RosConnector>().RosSocket.CallService <rosapi.TopicsRequest, rosapi.TopicsResponse>("/rosapi/topics", ServiceCallHandler, new rosapi.TopicsRequest()); GetComponent <RosConnector>().RosSocket.CallService <rosapi.GetParamRequest, rosapi.GetParamResponse>("/rosapi/get_param", ServiceCallHandler, new rosapi.GetParamRequest("/rosdistro", "default")); //GetComponent<RosConnector>().RosSocket.CallService<rosapi.TopicTypeRequest, rosapi.TopicTypeResponse>("/rosapi/topic_type", TopicTypeServiceCallHandler, new rosapi.TopicTypeRequest("/joy")); //get tf2_msgs/FrameGraph Service //GetComponent<RosConnector>().RosSocket.CallService<rosapi.FrameGraphRequest, rosapi.FrameGraphResponse>("/tf2_msgs/FrameGraph", FrameGraphServiceCallHandler, new rosapi.FrameGraphRequest()); //GetComponent<RosConnector>().RosSocket.CallService<rosapi.NodeDetailsRequest, rosapi.NodeDetailsResponse>("/rosapi/node_details", ServiceCallHandler, new rosapi.NodeDetailsRequest("/gazebo")); //Debug.Log("////////////////////////nodenames: " + nodenames.Length); //script.updateToolbox(nodenames); //wir erstellen nodes aus den Nodenamen, die wir uns geben lassen //nodeManager.generateNodes(nodenames); //nodeManager.generateNodes(topicnames); StartCoroutine(GenerateNodes()); }