protected void OnGUI() { if (isOpenUUID = GUILayout.Toggle(isOpenUUID, "UUID")) { DictGui("Modules", ComponentExtensions.modulesDict); DictGui("Interfaces", ComponentExtensions.interfacesDict); DictGui("Components", ComponentExtensions.componentsDict); } using (new GUILayout.HorizontalScope()) { if (GUILayout.Button("getManager")) { xpcfComponentManager = xpcf_api.getComponentManagerInstance().AddTo(subscriptions); } GUILayout.Toggle(xpcfComponentManager != null, "OK"); if (GUILayout.Button("load")) { var path = conf.path; Debug.Log(path); Debug.Log(xpcfComponentManager.load(path)); } if (GUILayout.Button("clear")) { xpcfComponentManager.clear(); } } using (new GUILayout.HorizontalScope("Metadata", GUI.skin.window)) { if (GUILayout.Button("getModulesMD")) { using (var modules = xpcfComponentManager.getModulesMetadata()) { Debug.Log(modules); Debug.Log(modules.size()); using (var e = modules.getEnumerator()) { while (e.MoveNext()) { using (var m = e.current()) { Debug.LogFormat("{0}: {1} : {2}", m.name(), m.getPath(), m.description()); } } } } } if (GUILayout.Button("getInterfacesMD")) { using (var interfaces = xpcfComponentManager.getInterfacesMetadata()) { Debug.Log(interfaces); Debug.Log(interfaces.size()); using (var e = interfaces.getEnumerator()) { while (e.MoveNext()) { using (var i = e.current()) { //Debug.Log(i.getUUID()); Debug.LogFormat("{0}: {1}", i.name(), i.description()); } } } } } if (GUILayout.Button("findComponentMD(UUID)")) { using (var x = xpcfComponentManager.findComponentMetadata(UUID)) Debug.Log(x); } if (GUILayout.Button("findInterfaceMD(UUID)")) { using (var x = xpcfComponentManager.findInterfaceMetadata(UUID)) Debug.Log(x); } if (GUILayout.Button("findModuleMD(UUID)")) { using (var x = xpcfComponentManager.findModuleMetadata(UUID)) Debug.Log(x); } if (GUILayout.Button("getModuleUUID(UUID)")) { using (var x = xpcfComponentManager.getModuleUUID(UUID)) Debug.Log(x); } } uuid = GUILayout.TextField(uuid); if (GUILayout.Button("createComponent(UUID)")) { xpcfComponent = xpcfComponentManager.createComponent(UUID).AddTo(subscriptions); } GUILayout.Toggle(xpcfComponent != null, "OK"); using (new GUILayout.HorizontalScope("IComponentIntrospect", GUI.skin.window)) { if (GUILayout.Button("getNbInterfaces")) { Debug.Log(xpcfComponent.getNbInterfaces()); } if (GUILayout.Button("getInterfaces")) { using (var interfaces = xpcfComponent.getInterfaces()) { Debug.Log(interfaces.size()); using (var e = interfaces.getEnumerator()) { while (e.MoveNext()) { using (var i = e.current()) { Debug.Log(xpcfComponent.getDescription(i)); } } } } } if (GUILayout.Button("implements(UUID)")) { Debug.Log(xpcfComponent.implements(UUID)); } if (GUILayout.Button("getDescription(UUID)")) { Debug.Log(xpcfComponent.getDescription(UUID)); } } using (new GUILayout.HorizontalScope("bindTo", GUI.skin.window)) { if (GUILayout.Button("bindTo<ICamera>")) { iCamera = xpcfComponent.BindTo <ICamera>().AddTo(subscriptions); } //if (GUILayout.Button("queryInterface TODO")) //{ // xpcfComponent = xpcfComponent.queryInterface(UUID); //} } GUILayout.Toggle(iCamera != null, "OK"); using (new GUILayout.HorizontalScope("ICamera", GUI.skin.window)) { if (GUILayout.Button("start")) { Debug.Log(iCamera.start()); } if (GUILayout.Button("getDistorsionParameters")) { using (var x = iCamera.getDistorsionParameters()) { Debug.Log(x); } } if (GUILayout.Button("getIntrinsicsParameters")) { using (var x = iCamera.getIntrinsicsParameters()) { Debug.Log(x); } } if (GUILayout.Button("getResolution")) { using (var size = iCamera.getResolution()) { Debug.LogFormat("{0} x {1}", size.width, size.height); } } if (GUILayout.Button("getNextImage")) { Debug.Log(iCamera.getNextImage(image)); } } GUILayout.Toggle(image != null, "OK"); using (new GUILayout.HorizontalScope("Image", GUI.skin.window)) { if (GUILayout.Button("getWidth")) { Debug.Log(image.getWidth()); } if (GUILayout.Button("getHeight")) { Debug.Log(image.getHeight()); } if (GUILayout.Button("getNbChannels")) { Debug.Log(image.getNbChannels()); } if (GUILayout.Button("getSize")) { using (var size = image.getSize()) Debug.LogFormat("{0} x {1}", size.width, size.height); } if (GUILayout.Button("getNbBitsPerComponent")) { Debug.Log(image.getNbBitsPerComponent()); } if (GUILayout.Button("getBufferSize")) { Debug.Log(image.getBufferSize()); } if (GUILayout.Button("getDataType")) { Debug.Log(image.getDataType()); } if (GUILayout.Button("getImageLayout")) { Debug.Log(image.getImageLayout()); } if (GUILayout.Button("getPixelOrder")) { Debug.Log(image.getPixelOrder()); } } using (new GUILayout.HorizontalScope("Texture", GUI.skin.window)) { if (GUILayout.Button("new")) { if (tex != null) { Destroy(tex); } var w = (int)image.getWidth(); var h = (int)image.getHeight(); Assert.AreEqual(3, image.getNbChannels()); Assert.AreEqual(8, image.getNbBitsPerComponent()); Assert.AreEqual(Image.DataType.TYPE_8U, image.getDataType()); Assert.AreEqual(Image.ImageLayout.LAYOUT_BGR, image.getImageLayout()); Assert.AreEqual(Image.PixelOrder.INTERLEAVED, image.getPixelOrder()); tex = new Texture2D(w, h, TextureFormat.RGB24, false); } if (GUILayout.Button("LoadRawTextureData")) { tex.LoadRawTextureData(image.data(), (int)image.getBufferSize()); } if (GUILayout.Button("Apply")) { tex.Apply(); } } if (tex != null) { GUILayout.Label(tex); } }