+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- This XML file was automatically generated by UiBuilder - do not modify by hand.
--->
-<!DOCTYPE Scene SYSTEM "UIForm.dtd">
-
-<Scene Bversion="2.0.0.201303182057" Dversion="20120315">
- <LogicalCoordinate>720</LogicalCoordinate>
- <Form id="IDF_AUDIO_ROUTER">
- <property backgroundColor="" backgroundColorOpacity="100" notificationTrayOpenEnabled="false" orientation="Portrait" softKey0NormalIcon="" softKey0PressedIcon="" softKey0Text="" softKey1NormalIcon="" softKey1PressedIcon="" softKey1Text="" title="" titleAlign="ALIGN_CENTER" titleIcon="" translucentFooter="false" translucentHeader="false" translucentIndicator="false"/>
- <layout mode="Portrait" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER|FORM_STYLE_FOOTER" type="NONE"/>
- <layout mode="Landscape" style="FORM_STYLE_INDICATOR|FORM_STYLE_HEADER|FORM_STYLE_FOOTER" type="NONE"/>
- </Form>
- <Footer>
- <property backgroundBitmapPath="" color="" colorOpacity="100" disabledButtonColor="" disabledButtonColorOpacity="100" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="100" disabledItemTextColor="" footerStyle="FOOTER_STYLE_BUTTON_TEXT" highlightedButtonColor="" highlightedButtonColorOpacity="100" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="100" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="100" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="100" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="100" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="100" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="100" selectedItemTextColor="" showBackButton="false"/>
- <itemSet/>
- </Footer>
- <Header>
- <property accessibilityHint="" backgroundBitmapPath="" color="" colorOpacity="100" descriptionText="" descriptionTextColor="" disabledButtonColor="" disabledButtonColorOpacity="100" disabledButtonTextColor="" disabledItemColor="" disabledItemColorOpacity="100" disabledItemTextColor="" headerStyle="HEADER_STYLE_TITLE" highlightedButtonColor="" highlightedButtonColorOpacity="100" highlightedButtonTextColor="" highlightedItemColor="" highlightedItemColorOpacity="100" highlightedItemTextColor="" normalButtonColor="" normalButtonColorOpacity="100" normalButtonTextColor="" normalItemColor="" normalItemColorOpacity="100" normalItemTextColor="" pressedButtonColor="" pressedButtonColorOpacity="100" pressedButtonTextColor="" pressedItemColor="" pressedItemColorOpacity="100" pressedItemTextColor="" selectedItemColor="" selectedItemColorOpacity="100" selectedItemTextColor="" titleIconPath="" titleText="AUDIO ROUTER" titleTextColor=""/>
- <itemSet/>
- </Header>
- <Button id="BUTTON_MICROPHONE" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="Microphone" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="50.0" y="290.0"/>
- <layout height="52.0" mode="Landscape" width="533.0" x="152.0" y="20.0"/>
- </Button>
- <Button id="BUTTON_HEADSET" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="Wired Acces." textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="50.0" y="360.0"/>
- <layout height="52.0" mode="Landscape" width="533.0" x="206.0" y="161.0"/>
- </Button>
- <Button id="BUTTON_BLUE_IN" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="BT(SCO)" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="50.0" y="430.0"/>
- <layout height="52.0" mode="Landscape" width="533.0" x="234.0" y="241.0"/>
- </Button>
- <Label id="LABEL_IN" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_CENTER" leftMargin="16" text="Audio Input Devices" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="108.0" mode="Portrait" width="330.0" x="0.0" y="180.0"/>
- <layout height="39.0" mode="Landscape" width="446.0" x="92.0" y="20.0"/>
- </Label>
- <Label id="LABEL_OUT" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_LEFT" leftMargin="16" text="Audio Output Devices" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="108.0" mode="Portrait" width="360.0" x="360.0" y="180.0"/>
- <layout height="50.0" mode="Landscape" width="487.0" x="791.0" y="20.0"/>
- </Label>
- <Button id="BUTTON_SPEAKER" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="Speaker" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="290.0"/>
- <layout height="52.0" mode="Landscape" width="355.0" x="924.0" y="69.0"/>
- </Button>
- <Button id="BUTTON_RECEIVER" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="Receiver" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="360.0"/>
- <layout height="52.0" mode="Landscape" width="184.0" x="1095.0" y="158.0"/>
- </Button>
- <Button id="BUTTON_HEADSET_OUT" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="Wired Acces." textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="430.0"/>
- <layout height="52.0" mode="Landscape" width="293.0" x="986.0" y="209.0"/>
- </Button>
- <Button id="BUTTON_BLUE_SCO" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="BT(SCO)" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="500.0"/>
- <layout height="52.0" mode="Landscape" width="213.0" x="1066.0" y="294.0"/>
- </Button>
- <Button id="BUTTON_BLUE_A2DP" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="#90EE90" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="BT(A2DP)" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="570.0"/>
- <layout height="52.0" mode="Landscape" width="138.0" x="1141.0" y="367.0"/>
- </Button>
- <Button id="BUTTON_HDMI" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="#90EE90" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="HDMI" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="640.0"/>
- <layout height="52.0" mode="Landscape" width="161.0" x="1118.0" y="432.0"/>
- </Button>
- <Button id="BUTTON_DOCK" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="#90EE90" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="DOCK" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="710.0"/>
- <layout height="52.0" mode="Landscape" width="236.0" x="1043.0" y="403.0"/>
- </Button>
- <Button id="BUTTON_WFD" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="#90EE90" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="WFD" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="780.0"/>
- <layout height="48.0" mode="Landscape" width="133.0" x="1146.0" y="436.0"/>
- </Button>
- <Button id="BUTTON_USB" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="#90EE90" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="USB" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="850.0"/>
- <layout height="52.0" mode="Landscape" width="355.0" x="924.0" y="432.0"/>
- </Button>
- <Button id="BUTTON_OUT_NONE" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="No Change" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="390.0" y="920.0"/>
- <layout height="52.0" mode="Landscape" width="369.0" x="910.0" y="432.0"/>
- </Button>
- <Button id="BUTTON_IN_NONE" parent="IDF_AUDIO_ROUTER">
- <property DisabledBitmapX="0.0" DisabledBitmapY="0.0" NormalBitmapX="0.0" NormalBitmapY="0.0" PressedBitmapX="0.0" PressedBitmapY="0.0" accessibilityHint="" disableTextColor="" disabledBGBitmapPath="" disabledBitmapPath="" disabledColor="" disabledColorOpacity="100" highlightedBGBitmapPath="" highlightedBitmapPath="" highlightedBitmapX="0.0" highlightedBitmapY="0.0" highlightedColor="" highlightedColorOpacity="100" highlightedTextColor="" horizontalAlign="ALIGN_CENTER" normalBGBitmapPath="" normalBitmapPath="" normalColor="" normalColorOpacity="100" normalTextColor="" pressedBGBitmapPath="" pressedBitmapPath="" pressedColor="" pressedColorOpacity="100" pressedTextColor="" text="No Change" textSize="32.0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="60.0" mode="Portrait" width="260.0" x="50.0" y="500.0"/>
- <layout height="52.0" mode="Landscape" width="533.0" x="211.0" y="238.0"/>
- </Button>
- <Label id="LABEL_ACTIVE_IN" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_CENTER" leftMargin="16" text="Label1" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="57.0" mode="Portrait" width="350.0" x="0.0" y="87.0"/>
- <layout height="33.0" mode="Landscape" width="519.0" x="28.0" y="20.0"/>
- </Label>
- <Label id="LABEL_ACTIVE_OUT" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_CENTER" leftMargin="16" text="Label2" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="57.0" mode="Portrait" width="359.0" x="360.0" y="86.0"/>
- <layout height="32.0" mode="Landscape" width="565.0" x="691.0" y="20.0"/>
- </Label>
- <Label id="IDC_LABEL3" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_CENTER" leftMargin="16" text="Active AudioInput" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="55.0" mode="Portrait" width="330.0" x="0.0" y="0.0"/>
- <layout height="22.0" mode="Landscape" width="449.0" x="48.0" y="20.0"/>
- </Label>
- <Label id="IDC_LABEL4" parent="IDF_AUDIO_ROUTER">
- <property accessibilityHint="" backgroundBitmapPath="" backgroundColor="" backgroundColorOpacity="0" horizontalAlign="ALIGN_CENTER" leftMargin="16" text="Active AudioOutput" textColor="" textSize="33.0" textStyle="LABEL_TEXT_STYLE_NORMAL" topMargin="0" verticalAlign="ALIGN_MIDDLE"/>
- <layout height="54.0" mode="Portrait" width="357.0" x="361.0" y="0.0"/>
- <layout height="15.0" mode="Landscape" width="634.0" x="638.0" y="20.0"/>
- </Label>
-</Scene>
+++ /dev/null
-//\r
-// Tizen C++ SDK\r
-// Copyright (c) 2012 Samsung Electronics Co., Ltd.\r
-//\r
-// Licensed under the Flora License, Version 1.0 (the License);\r
-// you may not use this file except in compliance with the License.\r
-// You may obtain a copy of the License at\r
-//\r
-// http://www.tizenopensource.org/license\r
-//\r
-// Unless required by applicable law or agreed to in writing, software\r
-// distributed under the License is distributed on an AS IS BASIS,\r
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-// See the License for the specific language governing permissions and\r
-// limitations under the License.\r
-//\r
-\r
-#include <FApp.h>\r
-#include <iostream>\r
-#include <FGraphics.h>\r
-#include <FGrpColor.h>\r
-#include <FMediaAudioRouteInfo.h>\r
-#include <FMediaAudioRouteManager.h>\r
-\r
-#include "AudioRouteForm.h"\r
-#include "SafeMacros.h"\r
-#include "UnitTestFactory.h"\r
-\r
-using namespace Tizen::Base;\r
-using namespace Tizen::Base::Collection;\r
-using namespace Tizen::Ui;\r
-using namespace Tizen::Ui::Controls;\r
-using namespace Tizen::Io;\r
-using namespace Tizen::System;\r
-using namespace Tizen::App;\r
-using namespace Tizen::Graphics;\r
-using namespace Tizen::Ui::Scenes;\r
-using namespace Tizen::Media;\r
-\r
-static const String FORM_ID = L"AudioRouteForm";\r
-extern const Tizen::Ui::Scenes::SceneId AUDIO_ROUTE_SCENE_ID = L"AudioRouteScene";\r
-\r
-const wchar_t* AudioRouteForm::INPUT_DEVICE_LIST[] = {\r
- L"INPUT_NONE"\r
- , L"MIC"\r
- , L"WIRED_ACCESSORY"\r
- , L"BT_SCO"\r
-};\r
-\r
-const wchar_t* AudioRouteForm::OUTPUT_DEVICE_LIST[] = {\r
- L"OUTPUT_NONE"\r
- , L"SPEAKER"\r
- , L"RECIEVER"\r
- , L"WIRED_ACCESSORY"\r
- , L"BT_SCO"\r
- , L"BT_A2DP"\r
- , L"DOCK"\r
- , L"HDMI"\r
- , L"WFD"\r
- , L"USB_AUDIO"\r
-};\r
-\r
-AudioRouteForm*\r
-AudioRouteForm::CreateFormN(const Tizen::Ui::Scenes::SceneId &sceneId)\r
-{\r
- SceneManager* pSceneManager = SceneManager::GetInstance();\r
- AudioRouteForm* pForm = new (std::nothrow) AudioRouteForm();\r
- pForm->Initialize();\r
- pSceneManager->AddSceneEventListener(sceneId, *(pForm->GetListener()));\r
- return pForm;\r
-}\r
-\r
-MultiForm*\r
-AudioRouteForm::FormCreateFunc()\r
-{\r
- AudioRouteForm* pForm = AudioRouteForm::CreateFormN(AUDIO_ROUTE_SCENE_ID);\r
- return pForm;\r
-}\r
-\r
-String\r
-AudioRouteForm::GetFormId()\r
-{\r
- return FORM_ID;\r
-}\r
-\r
-SceneId\r
-AudioRouteForm::GetSceneId()\r
-{\r
- return AUDIO_ROUTE_SCENE_ID;\r
-}\r
-\r
-AudioRouteForm*\r
-AudioRouteForm::GetListener(void)\r
-{\r
- return this;\r
-}\r
-void\r
-AudioRouteForm::OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,\r
- const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs)\r
-{\r
- OnActivate(null);\r
-}\r
-void\r
-AudioRouteForm::OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId,\r
- const Tizen::Ui::Scenes::SceneId& nextSceneId)\r
-{\r
-\r
-}\r
-void\r
-AudioRouteForm::UpdateInputDevices(void)\r
-{\r
- for (int i = 0; i < MAX_INPUT_DEVICE; i++)\r
- {\r
- if (__pInputDeviceButtons[i])\r
- {\r
- __pInputDeviceButtons[i]->SetEnabled(__inputList[i]);\r
- __pInputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_BLUE));\r
- }\r
- }\r
- __pLabelActiveIn->SetText(INPUT_DEVICE_LIST[__currentInputDevice]);\r
- Draw();\r
-}\r
-void\r
-AudioRouteForm::UpdateOutputDevices(void)\r
-{\r
- for (int i = 0; i < MAX_OUTPUT_DEVICE; i++)\r
- {\r
- if (__pOutputDeviceButtons[i])\r
- {\r
- __pOutputDeviceButtons[i]->SetEnabled(__outputList[i]);\r
- __pOutputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_BLUE));\r
- }\r
- }\r
- __pLabelActiveOut->SetText(OUTPUT_DEVICE_LIST[__currentOutputDevice]);\r
- Draw();\r
-}\r
-\r
-AudioRouteForm::AudioRouteForm(void)\r
- : __pAudioRouteManager(null)\r
- , __pAudioDeviceList(null, remover)\r
- , __pPlayer(null)\r
- , __pAudioRecorder(null)\r
- , __toRouteInputDevice(INPUT_AUDIO_DEVICE_NONE)\r
- , __toRouteOutputDevice(OUTPUT_AUDIO_DEVICE_NONE)\r
- , __pLabelActiveIn(null)\r
- , __pLabelActiveOut(null)\r
- , __numInputAvail(0)\r
- , __numOutputAvail(0)\r
- , __isOutChecked(false)\r
- , __isInChecked(false)\r
- , __isRecording(false)\r
- , __isPlaying(false)\r
-{\r
- for (int i= 0;i < MAX_INPUT_DEVICE; i ++)\r
- {\r
- __inputList[i] = 0;\r
- __pInputDeviceButtons[i] = null;\r
- }\r
-\r
- for (int i= 0;i < MAX_OUTPUT_DEVICE; i ++)\r
- {\r
- __outputList[i] = 0;\r
- __pOutputDeviceButtons[i] = null;\r
- }\r
-}\r
-\r
-AudioRouteForm::~AudioRouteForm(void)\r
-{\r
- __pAudioRouteManager->SetAudioRouteEventListener(null);\r
- __pAudioRouteManager = null;\r
-}\r
-\r
-bool\r
-AudioRouteForm::Initialize(void)\r
-{\r
- // This is called at once when application is launched.\r
- // Construct an XML form\r
- Construct(L"IDF_AUDIO_ROUTER");\r
- return true;\r
-}\r
-\r
-result\r
-AudioRouteForm::OnInitializing(void)\r
-{\r
- result r = E_SUCCESS;\r
- AppConfig* pConfig = null;\r
- SetFormBackEventListener(this);\r
- Footer* pFooter = GetFooter();\r
- TryReturn(pFooter, GetLastResult(), "[%s] GetFooter Failed", GetErrorMessage(GetLastResult()));\r
- pFooter->SetBackButton();\r
-\r
- AddFooterItem(L"Reset", ID_BUTTON_RESET);\r
- AddFooterItem(L"Record", ID_BUTTON_RECORD);\r
- AddFooterItem(L"Play", ID_BUTTON_PLAY);\r
-\r
- pFooter->AddActionEventListener(*this);\r
- pFooter->SetItemEnabled(FOOTER_ID_RESET, false);\r
- pFooter->SetItemEnabled(FOOTER_ID_PLAY, false);\r
-\r
- InitAudioDeviceStructures();\r
- //Input Devices\r
-\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_NONE] = static_cast<Button *>(GetControl(L"BUTTON_IN_NONE"));\r
- TryCatch(__pInputDeviceButtons[INPUT_AUDIO_DEVICE_NONE] != null, r = GetLastResult(), "[%s] GetControl BUTTON_IN_NONE Failed",GetErrorMessage(GetLastResult()));\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_NONE]->SetActionId(ID_INPUT_BUTTON_BASE + INPUT_AUDIO_DEVICE_NONE);\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_NONE]->AddActionEventListener(*this);\r
-\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_MIC] = static_cast<Button *>(GetControl(L"BUTTON_MICROPHONE"));\r
- TryCatch(__pInputDeviceButtons[INPUT_AUDIO_DEVICE_MIC] != null, r = GetLastResult(), "[%s] GetControl BUTTON_MICROPHONE Failed",GetErrorMessage(GetLastResult()));\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_MIC]->SetActionId(ID_INPUT_BUTTON_BASE + INPUT_AUDIO_DEVICE_MIC);\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_MIC]->AddActionEventListener(*this);\r
-\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_WIRED_ACCESSORY] = static_cast<Button *>(GetControl(L"BUTTON_HEADSET"));\r
- TryCatch(__pInputDeviceButtons[INPUT_AUDIO_DEVICE_WIRED_ACCESSORY] != null, r = GetLastResult(), "[%s] GetControl BUTTON_HEADSET Failed",GetErrorMessage(GetLastResult()));\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_WIRED_ACCESSORY]->SetActionId(ID_INPUT_BUTTON_BASE + INPUT_AUDIO_DEVICE_WIRED_ACCESSORY);\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_WIRED_ACCESSORY]->AddActionEventListener(*this);\r
-\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_BT_SCO] = static_cast<Button *>(GetControl(L"BUTTON_BLUE_IN"));\r
- TryCatch(__pInputDeviceButtons[INPUT_AUDIO_DEVICE_BT_SCO] != null, r = GetLastResult(), "[%s] GetControl BUTTON_BLUE_IN Failed",GetErrorMessage(GetLastResult()));\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_BT_SCO]->SetActionId(ID_INPUT_BUTTON_BASE + INPUT_AUDIO_DEVICE_BT_SCO);\r
- __pInputDeviceButtons[INPUT_AUDIO_DEVICE_BT_SCO]->AddActionEventListener(*this);\r
-\r
- //Output Devices\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_NONE] = static_cast<Button *>(GetControl(L"BUTTON_OUT_NONE"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_NONE] != null, r = GetLastResult(), "[%s] GetControl BUTTON_OUT_NONE Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_NONE]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_NONE);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_NONE]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_SPEAKER] = static_cast<Button *>(GetControl(L"BUTTON_SPEAKER"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_SPEAKER] != null, r = GetLastResult(), "[%s] GetControl BUTTON_SPEAKER Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_SPEAKER]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_SPEAKER);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_SPEAKER]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_RECEIVER] = static_cast<Button *>(GetControl(L"BUTTON_RECEIVER"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_RECEIVER] != null, r = GetLastResult(), "[%s] GetControl BUTTON_RECEIVER Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_RECEIVER]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_RECEIVER);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_RECEIVER]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WIRED_ACCESSORY] = static_cast<Button *>(GetControl(L"BUTTON_HEADSET_OUT"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WIRED_ACCESSORY] != null, r = GetLastResult(), "[%s] GetControl BUTTON_HEADSET_OUT Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WIRED_ACCESSORY]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_WIRED_ACCESSORY);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WIRED_ACCESSORY]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_A2DP] = static_cast<Button *>(GetControl(L"BUTTON_BLUE_A2DP"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_A2DP] != null, r = GetLastResult(), "[%s] GetControl BUTTON_BLUE_A2DP Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_A2DP]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_BT_A2DP);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_A2DP]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_SCO] = static_cast<Button *>(GetControl(L"BUTTON_BLUE_SCO"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_SCO] != null, r = GetLastResult(), "[%s] GetControl BUTTON_BLUE_SCO Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_SCO]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_BT_SCO);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_BT_SCO]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_DOCK] = static_cast<Button *>(GetControl(L"BUTTON_DOCK"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_DOCK] != null, r = GetLastResult(), "[%s] GetControl BUTTON_DOCK Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_DOCK]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_DOCK);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_DOCK]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_HDMI] = static_cast<Button *>(GetControl(L"BUTTON_HDMI"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_HDMI] != null, r = GetLastResult(), "[%s] GetControl BUTTON_HDMI Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_HDMI]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_HDMI);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_HDMI]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WFD] = static_cast<Button *>(GetControl(L"BUTTON_WFD"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WFD] != null, r = GetLastResult(), "[%s] GetControl BUTTON_WFD Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WFD]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_WFD);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_WFD]->AddActionEventListener(*this);\r
-\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_USB_AUDIO] = static_cast<Button *>(GetControl(L"BUTTON_USB"));\r
- TryCatch(__pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_USB_AUDIO] != null, r = GetLastResult(), "[%s] GetControl BUTTON_USB Failed",GetErrorMessage(GetLastResult()));\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_USB_AUDIO]->SetActionId(ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_USB_AUDIO);\r
- __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_USB_AUDIO]->AddActionEventListener(*this);\r
-\r
- __pLabelActiveIn = static_cast<Label *>(GetControl(L"LABEL_ACTIVE_IN"));\r
- TryCatch(__pLabelActiveIn != null, r = GetLastResult(), "[%s] GetControl LABEL_ACTIVE_IN Failed",GetErrorMessage(GetLastResult()));\r
-\r
- __pLabelActiveOut = static_cast<Label *>(GetControl(L"LABEL_ACTIVE_OUT"));\r
- TryCatch(__pLabelActiveOut != null, r = GetLastResult(), "[%s] GetControl LABEL_ACTIVE_IN Failed",GetErrorMessage(GetLastResult()));\r
-\r
- pConfig = AppConfig::GetInstance();\r
- TryReturn(pConfig != null, GetLastResult(), "pConfig is null");\r
-\r
- __filePath.Clear();\r
- __filePath.Append(App::GetInstance()->GetAppRootPath());\r
- __filePath.Append(pConfig->GetString("AudioRouter", String(L"audioFile")));\r
- __filePath.Append(".amr");\r
-\r
- //__defaulTextColor = __pOutputDeviceButtons[OUTPUT_AUDIO_DEVICE_USB_AUDIO]->GetTextColor();\r
- __pAppConfig = AppConfig::GetInstance();\r
- TryCatch(__pAppConfig != null, r = E_SYSTEM, "[E_SYSTEM] AppConfig is NULL!");\r
- __routingTextColor = Color(144, 238, 144);\r
- ShowActiveButtons();\r
- __isInChecked = false;\r
- __isOutChecked = false;\r
- return E_SUCCESS;\r
-CATCH:\r
- return r;\r
-}\r
-\r
-void\r
-AudioRouteForm::InitAudioDeviceStructures(void)\r
-{\r
- if (__pAudioRouteManager == null)\r
- {\r
- __pAudioRouteManager = AudioRouteManager::GetInstance();\r
- __pAudioRouteManager->SetAudioRouteEventListener(this);\r
- }\r
-\r
- __pAudioDeviceList.reset(__pAudioRouteManager->GetAvailableAudioRouteListN());\r
- AppAssert(__pAudioDeviceList.get() != null);\r
-\r
- for (int i= 0;i < MAX_INPUT_DEVICE; i ++)\r
- {\r
- __inputList[i] = 0;\r
- }\r
- for (int i= 0;i < MAX_OUTPUT_DEVICE; i ++)\r
- {\r
- __outputList[i] = 0;\r
- }\r
-\r
- int count = __pAudioDeviceList->GetCount();\r
- AppLog("count - %d",count);\r
- for(int i = 0; i < count; i++)\r
- {\r
- AudioRouteInfo *pAudioDevice = (AudioRouteInfo *)__pAudioDeviceList->GetAt(i);\r
- AppLog("Input - %ls Output - %ls",INPUT_DEVICE_LIST[pAudioDevice->GetInputAudioDevice()], OUTPUT_DEVICE_LIST[pAudioDevice->GetOutputAudioDevice()]);\r
- __inputList[pAudioDevice->GetInputAudioDevice()] = 1;\r
- __outputList[pAudioDevice->GetOutputAudioDevice()] = 1;\r
- }\r
-\r
- __numInputAvail = 0;\r
- __numOutputAvail = 0;\r
-\r
- for (int i= 0; i < MAX_INPUT_DEVICE; i++)\r
- {\r
- if (__inputList[i])\r
- {\r
- __numInputAvail++;\r
- }\r
- }\r
-\r
- for (int i= 0; i < MAX_OUTPUT_DEVICE; i++)\r
- {\r
- if (__outputList[i])\r
- {\r
- __numOutputAvail++;\r
- }\r
- }\r
- AudioRouteInfo device(INPUT_AUDIO_DEVICE_NONE, OUTPUT_AUDIO_DEVICE_NONE);\r
- device = __pAudioRouteManager->GetActiveAudioRoute();\r
- __currentInputDevice = device.GetInputAudioDevice();\r
- __currentOutputDevice = device.GetOutputAudioDevice();\r
- AppLog("Input - %d Output - %d", __currentInputDevice, __currentOutputDevice);\r
-}\r
-\r
-void\r
-AudioRouteForm::ShowActiveButtons(void)\r
-{\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
- ShowFooterItem(FOOTER_ID_RESET, true);\r
-}\r
-\r
-void\r
-AudioRouteForm::DeactivateButtons(void)\r
-{\r
- for (int i = 0; i < MAX_INPUT_DEVICE; i++)\r
- {\r
- if (__pInputDeviceButtons[i])\r
- {\r
- __pInputDeviceButtons[i]->SetEnabled(false);\r
- __pInputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
-\r
- for (int i = 0; i < MAX_OUTPUT_DEVICE; i++)\r
- {\r
- if (__pOutputDeviceButtons[i])\r
- {\r
- __pOutputDeviceButtons[i]->SetEnabled(false);\r
- __pOutputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
- ShowFooterItem(FOOTER_ID_RESET, false);\r
- Draw();\r
-}\r
-\r
-result\r
-AudioRouteForm::OnActivate(void* pParam)\r
-{\r
- result r = E_SUCCESS;\r
- AppLog("Enter");\r
- InitAudioDeviceStructures();\r
- AudioRouteInfo route(INPUT_AUDIO_DEVICE_NONE, OUTPUT_AUDIO_DEVICE_NONE);\r
- ShowActiveButtons();\r
- AppLog("Input - %ls Output - %ls", INPUT_DEVICE_LIST[__currentInputDevice], OUTPUT_DEVICE_LIST[__currentOutputDevice]);\r
- return r;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnBatteryLevelChanged(Tizen::System::BatteryLevel batteryLevel)\r
-{\r
- if (batteryLevel == BATTERY_CRITICAL || batteryLevel == BATTERY_EMPTY || batteryLevel == BATTERY_LOW)\r
- {\r
- bool isCharging = false;\r
- Tizen::System::RuntimeInfo::GetValue(String(L"IsCharging"), isCharging);\r
- if ((!isCharging) && (__pPlayer.get() != null))\r
- {\r
- __pPlayer->Stop();\r
- __pPlayer->Close();\r
- Deactivate();\r
- }\r
- }\r
-}\r
-\r
-void\r
-AudioRouteForm::OnBackground(void)\r
-{\r
- if(__isPlaying)\r
- {\r
- TryReturn(__pPlayer.get(), , "[E_INVALID_STATE] pPlayer is NULL");\r
- PlayerState state = PLAYER_STATE_ERROR;\r
- state = __pPlayer->GetState();\r
- if (state == PLAYER_STATE_PLAYING)\r
- {\r
- __pPlayer->Pause();\r
- ShowFooterItem(FOOTER_ID_RECORD, true);\r
- SetFooterItem(FOOTER_ID_PLAY, "Play", ID_BUTTON_PLAY);\r
- __isPlaying = false;\r
- }\r
- }\r
- else if (__isRecording)\r
- {\r
- TryReturn(__pAudioRecorder.get(), , "[E_INVALID_STATE] pAudioRecorder is NULL");\r
- RecorderState state = RECORDER_STATE_ERROR;\r
- state = __pAudioRecorder->GetState();\r
- if (state == RECORDER_STATE_RECORDING)\r
- {\r
- __pAudioRecorder->Cancel();\r
- }\r
- }\r
- ShowActiveButtons();\r
-}\r
-\r
-void\r
-AudioRouteForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)\r
-{\r
- AudioRouteInfo routeInfo(INPUT_AUDIO_DEVICE_NONE, OUTPUT_AUDIO_DEVICE_NONE);\r
- if (__isPlaying)\r
- {\r
- if (__pPlayer.get())\r
- {\r
- __pPlayer->Stop();\r
- __pPlayer->Close();\r
- }\r
- }\r
-\r
- if (__isRecording)\r
- {\r
- if (__pAudioRecorder.get())\r
- {\r
- __pAudioRecorder->Cancel();\r
- }\r
- }\r
- TryReturn(__pAudioRouteManager, , "[E_INVALID_STATE] RouteManager is NULL");\r
- routeInfo = __pAudioRouteManager->GetActiveAudioRoute();\r
- if (routeInfo.GetInputAudioDevice() != INPUT_AUDIO_DEVICE_MIC ||\r
- routeInfo.GetOutputAudioDevice() != OUTPUT_AUDIO_DEVICE_SPEAKER)\r
- {\r
- ShowMessageBox("Info", "The route is set to Mic/Speaker");\r
- //Set to Default\r
- routeInfo.SetInputAudioDevice(INPUT_AUDIO_DEVICE_MIC);\r
- routeInfo.SetOutputAudioDevice(OUTPUT_AUDIO_DEVICE_SPEAKER);\r
- if (__pAudioRouteManager)\r
- {\r
- __pAudioRouteManager->SetActiveAudioRoute(routeInfo);\r
- }\r
- }\r
- Deactivate();\r
-}\r
-\r
-void\r
-AudioRouteForm::RouteAudio(void)\r
-{\r
- result r = E_SUCCESS;\r
- AudioRouteInfo audioRoute(INPUT_AUDIO_DEVICE_NONE, OUTPUT_AUDIO_DEVICE_NONE);\r
- audioRoute.SetInputAudioDevice(__toRouteInputDevice);\r
- audioRoute.SetOutputAudioDevice(__toRouteOutputDevice);\r
- AppLog("Inout - %d output - %d", __toRouteInputDevice, __toRouteOutputDevice);\r
- r = __pAudioRouteManager->SetActiveAudioRoute(audioRoute);\r
- if (IsFailed(r))\r
- {\r
- ShowMessageBox("Error", "Route failed\n(%s)", GetErrorMessage(r));\r
- }\r
- else\r
- {\r
- __toRouteInputDevice = INPUT_AUDIO_DEVICE_NONE;\r
- __toRouteOutputDevice = OUTPUT_AUDIO_DEVICE_NONE;\r
- __isInChecked = false;\r
- __isOutChecked = false;\r
- ShowFooterItem(FOOTER_ID_RESET, false);\r
- InitAudioDeviceStructures();\r
- ShowActiveButtons();\r
- }\r
-}\r
-\r
-\r
-void\r
-AudioRouteForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)\r
-{\r
- AppLog("Action Id - %d InputSelected - %d OutputSelected - %d", actionId, __isInChecked, __isOutChecked);\r
- result r = E_SUCCESS;\r
- if (actionId == ID_BUTTON_RESET)\r
- {\r
- AudioRouteInfo audioRoute(INPUT_AUDIO_DEVICE_NONE, OUTPUT_AUDIO_DEVICE_NONE);\r
- TryReturn(__pAudioRouteManager, , "[E_INVALID_STATE] RouteManager is NULL");\r
- audioRoute = __pAudioRouteManager->GetActiveAudioRoute();\r
- if (audioRoute.GetInputAudioDevice() != INPUT_AUDIO_DEVICE_MIC ||\r
- audioRoute.GetOutputAudioDevice() != OUTPUT_AUDIO_DEVICE_SPEAKER)\r
- {\r
- audioRoute.SetInputAudioDevice(INPUT_AUDIO_DEVICE_MIC);\r
- audioRoute.SetOutputAudioDevice(OUTPUT_AUDIO_DEVICE_SPEAKER);\r
- r = __pAudioRouteManager->SetActiveAudioRoute(audioRoute);\r
- if (IsFailed(r))\r
- {\r
- ShowMessageBox("Error", "Route failed\n(%s)", GetErrorMessage(r));\r
- }\r
- else\r
- {\r
- __toRouteInputDevice = INPUT_AUDIO_DEVICE_NONE;\r
- __toRouteOutputDevice = OUTPUT_AUDIO_DEVICE_NONE;\r
- __isInChecked = false;\r
- __isOutChecked = false;\r
- InitAudioDeviceStructures();\r
- ShowActiveButtons();\r
- }\r
- }\r
- }\r
- else if (actionId == ID_BUTTON_PLAY)\r
- {\r
- if (!__isPlaying)\r
- {\r
- r = StartPlayer();\r
- if ( r != E_SUCCESS)\r
- {\r
- ShowMessageBox("Error", "Play failed\n(%s)", GetErrorMessage(r));\r
- }\r
- TryReturn(r == E_SUCCESS, , "[%s] Play failed", GetErrorMessage(r));\r
- ShowFooterItem(FOOTER_ID_RECORD, false);\r
- SetFooterItem(FOOTER_ID_PLAY, "Stop", ID_BUTTON_PLAY);\r
- DeactivateButtons();\r
- __isPlaying = true;\r
- }\r
- else\r
- {\r
- StopPlayer();\r
- ShowFooterItem(FOOTER_ID_RECORD, true);\r
- SetFooterItem(FOOTER_ID_PLAY, "Play", ID_BUTTON_PLAY);\r
- ShowActiveButtons();\r
- __isPlaying = false;\r
- }\r
- Draw();\r
- }\r
- else if (actionId == ID_BUTTON_RECORD)\r
- {\r
- if (!__isRecording)\r
- {\r
- r = StartRecorder();\r
- if ( r != E_SUCCESS)\r
- {\r
- ShowMessageBox("Error", "Start Recording failed\n(%s)", GetErrorMessage(r));\r
- }\r
- }\r
- else\r
- {\r
- r = StopRecorder();\r
- TryLog(r == E_SUCCESS, "StopRecoder Failed");\r
- if (r != E_SUCCESS)\r
- {\r
-\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, true);\r
- ShowActiveButtons();\r
- __isRecording = false;\r
- }\r
- }\r
- }\r
- else if (actionId >= ID_INPUT_BUTTON_BASE && actionId <= ID_INPUT_BUTTON_BASE + INPUT_AUDIO_DEVICE_BT_SCO)\r
- {\r
- int index = actionId - ID_INPUT_BUTTON_BASE;\r
- if (__isInChecked )\r
- {\r
- __toRouteInputDevice = INPUT_AUDIO_DEVICE_NONE;\r
- __isInChecked = false;\r
- __isOutChecked = false;\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
- }\r
- else\r
- {\r
- //Input\r
- __toRouteInputDevice = static_cast<Tizen::Media::InputAudioDevice> (actionId - ID_INPUT_BUTTON_BASE);\r
- for (int i = 0; i < MAX_INPUT_DEVICE; i++)\r
- {\r
- if((i == __toRouteInputDevice) && (__pInputDeviceButtons[__toRouteInputDevice]))\r
- {\r
- __pInputDeviceButtons[__toRouteInputDevice]->SetTextColor(Color::GetColor(COLOR_ID_RED));\r
- __pInputDeviceButtons[__toRouteInputDevice]->Draw();\r
- __isInChecked = true;\r
- }\r
- else if (__pInputDeviceButtons[i])\r
- {\r
- __pInputDeviceButtons[i]->SetEnabled(false);\r
- __pInputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
- //Output\r
- if (__isOutChecked == false)\r
- {\r
- for (int i = 0; i < MAX_OUTPUT_DEVICE; i++)\r
- {\r
- if (__pOutputDeviceButtons[i])\r
- {\r
- __pOutputDeviceButtons[i]->SetEnabled(false);\r
- __pOutputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
- std::unique_ptr<IList, RouteListRemover> pOutList(GetSupportedOutDevicesN(static_cast<InputAudioDevice>(index)), remover);\r
- if (pOutList.get())\r
- {\r
- for (int j = 0; j < pOutList->GetCount(); j++)\r
- {\r
- Long *pTemp = (Long *)pOutList->GetAt(j);\r
- unsigned int outItem = pTemp->ToInt();\r
- if (__pOutputDeviceButtons[outItem])\r
- {\r
- AppLog("outItem - %d Enabled ", outItem);\r
- __pOutputDeviceButtons[outItem]->SetEnabled(true);\r
- __pOutputDeviceButtons[outItem]->SetTextColor(Color::GetColor(COLOR_ID_BLUE));\r
- }\r
- }\r
- }\r
- }\r
- else\r
- {\r
- RouteAudio();\r
- }\r
- }\r
- }\r
- else if (actionId >= ID_OUTPUT_BUTTON_BASE && actionId <= ID_OUTPUT_BUTTON_BASE + OUTPUT_AUDIO_DEVICE_USB_AUDIO)\r
- {\r
- int index = actionId - ID_OUTPUT_BUTTON_BASE;\r
- if (__isOutChecked )\r
- {\r
- __toRouteOutputDevice = OUTPUT_AUDIO_DEVICE_NONE;\r
- __isOutChecked = false;\r
- __isInChecked = false;\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
- }\r
- else\r
- {\r
- //Output\r
- __toRouteOutputDevice = static_cast<Tizen::Media::OutputAudioDevice> (actionId - ID_OUTPUT_BUTTON_BASE);\r
- for (int i = 0; i < MAX_OUTPUT_DEVICE; i++)\r
- {\r
- if((i == __toRouteOutputDevice) && (__pOutputDeviceButtons[__toRouteOutputDevice]))\r
- {\r
- __pOutputDeviceButtons[__toRouteOutputDevice]->SetTextColor(Color::GetColor(COLOR_ID_RED));\r
- __pOutputDeviceButtons[__toRouteOutputDevice]->Draw();\r
- __isOutChecked = true;\r
- }\r
- else if (__pOutputDeviceButtons[i])\r
- {\r
- __pOutputDeviceButtons[i]->SetEnabled(false);\r
- __pOutputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
- //Input\r
- if (__isInChecked == false)\r
- {\r
- for (int i = 0; i < MAX_INPUT_DEVICE; i++)\r
- {\r
- if (__pInputDeviceButtons[i])\r
- {\r
- __pInputDeviceButtons[i]->SetEnabled(false);\r
- __pInputDeviceButtons[i]->SetTextColor(Color::GetColor(COLOR_ID_GREY));\r
- }\r
- }\r
- std::unique_ptr<IList, RouteListRemover> pInList(GetSupportedInDevicesN(static_cast<OutputAudioDevice>(index)), remover);\r
- if (pInList.get())\r
- {\r
- for(int j = 0; j < pInList->GetCount(); j++)\r
- {\r
- Long *pTemp = (Long *)pInList->GetAt(j);\r
- unsigned int inItem = pTemp->ToInt();\r
- if (__pInputDeviceButtons[inItem])\r
- {\r
- AppLog("outItem - %d Enabled ", inItem);\r
- __pInputDeviceButtons[inItem]->SetEnabled(true);\r
- __pInputDeviceButtons[inItem]->SetTextColor(Color::GetColor(COLOR_ID_BLUE));\r
- }\r
- }\r
- }\r
- }\r
- else\r
- {\r
- RouteAudio();\r
- }\r
- }\r
- }\r
- Draw();\r
-}\r
-\r
-result\r
-AudioRouteForm::StartPlayer(void)\r
-{\r
- bool isFileExist = false;\r
- result r = E_SUCCESS;\r
- isFileExist = File::IsFileExist(__filePath);\r
- TryReturn(isFileExist == true, E_FILE_NOT_FOUND, "[E_FILE_NOT_FOUND] recorded file not found");\r
- __pPlayer.reset( new (std::nothrow) Player);\r
- TryReturn(__pPlayer.get(), E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] can't create memory for player");\r
- r = __pPlayer->Construct(*this);\r
- TryReturn(r == E_SUCCESS, r, "[%s] Construct failed", GetErrorMessage(r));\r
-// __pPlayer->SetLooping(true);\r
- r = __pPlayer->SetVolume(80);\r
- TryReturn(r == E_SUCCESS, r, "[%s] set volume failed", GetErrorMessage(r));\r
-\r
- r = __pPlayer->OpenFile(__filePath);\r
- TryReturn(r == E_SUCCESS, r, "[%s] Open failed", GetErrorMessage(r));\r
- r = __pPlayer->Play();\r
- return r;\r
-}\r
-\r
-void\r
-AudioRouteForm::StopPlayer(void)\r
-{\r
- PlayerState state = PLAYER_STATE_ERROR;\r
- result r = E_SUCCESS;\r
- TryReturn(__pPlayer.get(), , "[E_INVALID_STATE] Player is NULL!!");\r
- state = __pPlayer->GetState();\r
- if (state == PLAYER_STATE_ERROR)\r
- {\r
- __pPlayer.reset(null);\r
- return;\r
- }\r
- if ((state == PLAYER_STATE_PLAYING) || (state == PLAYER_STATE_PAUSED))\r
- {\r
- r = __pPlayer->Stop();\r
- TryLog(r == E_SUCCESS, "[%s] Player Stop failed", GetErrorMessage(r));\r
- }\r
- if ((state == PLAYER_STATE_OPENED) || (state == PLAYER_STATE_STOPPED) || (state == PLAYER_STATE_ENDOFCLIP))\r
- {\r
- r = __pPlayer->Close();\r
- TryLog(r == E_SUCCESS, "[%s] Player Close failed", GetErrorMessage(r));\r
- }\r
- return;\r
-}\r
-\r
-result\r
-AudioRouteForm::StartRecorder(void)\r
-{\r
- result r = E_SUCCESS;\r
- __pAudioRecorder.reset(new (std::nothrow) AudioRecorder);\r
- TryReturn(__pAudioRecorder.get() != null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] can't create memory for AudioRecorder");\r
-\r
- r = __pAudioRecorder->Construct(*this);\r
- TryReturn(r == E_SUCCESS, r, "[%s] AudioRecorder::Construct failed", GetErrorMessage(r));\r
-\r
- r = __pAudioRecorder->CreateAudioFile(__filePath, true);\r
- TryReturn(r == E_SUCCESS, r, "[%s] AudioRecorder::CreateAudioFile failed", GetErrorMessage(r));\r
-\r
- r = __pAudioRecorder->Record();\r
- return r;\r
-\r
-}\r
-result\r
-AudioRouteForm::StopRecorder(void)\r
-{\r
- TryReturn(__pAudioRecorder.get(), E_INVALID_STATE, "[E_INVALID_STATE] AudioRecorder is NULL!!");\r
- RecorderState state = RECORDER_STATE_ERROR;\r
- result r= E_SUCCESS;\r
- state = __pAudioRecorder->GetState();\r
-\r
- if (state == RECORDER_STATE_ERROR)\r
- {\r
- __pAudioRecorder.reset(null);\r
- return GetLastResult();\r
- }\r
-\r
- if ((state == RECORDER_STATE_RECORDING) ||\r
- (state == RECORDER_STATE_PAUSING) ||\r
- (state == RECORDER_STATE_PAUSED))\r
- {\r
- r = __pAudioRecorder->Stop();\r
- }\r
- //Close and buttons should be set in Call-backs\r
- return r;\r
-}\r
-\r
-//Recorder\r
-void\r
-AudioRouteForm::OnAudioRecorderStopped(result r)\r
-{\r
- AppLog("Enter");\r
-\r
- TryCatch(__pAudioRecorder.get(), ,"AudioRecorder is NULL!!");\r
- TryCatch(r == E_SUCCESS, ,"[%s] Stopped returns", GetErrorMessage(r));\r
-\r
- r = __pAudioRecorder->Close();\r
- TryCatch(r == E_SUCCESS, , "[%s] Close failed", GetErrorMessage(r));\r
- return;\r
-CATCH:\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- __isRecording = false;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderCanceled(result r)\r
-{\r
- AppLog("Enter");\r
- ShowMessageBox("Warning", "Recorder Canceled\n(%s)", GetErrorMessage(r));\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, true);\r
- ShowActiveButtons();\r
- __isRecording = false;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderPaused(result r)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderStarted(result r)\r
-{\r
- AppLog("Enter");\r
- SetFooterItem(FOOTER_ID_RECORD, "Stop", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, false);\r
- DeactivateButtons();\r
- __isRecording = true;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderEndReached(RecordingEndCondition endCondition)\r
-{\r
- AppLog("Enter");\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, true);\r
- ShowActiveButtons();\r
- __isRecording = false;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderClosed(result r)\r
-{\r
- AppLog("Enter");\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, true);\r
- ShowActiveButtons();\r
- __isRecording = false;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRecorderErrorOccurred(RecorderErrorReason r)\r
-{\r
- AppLog("Enter");\r
- ShowMessageBox("Error", "Recorder Error Occured\n(%s)", GetErrorMessage(r));\r
- SetFooterItem(FOOTER_ID_RECORD, "Record", ID_BUTTON_RECORD);\r
- ShowFooterItem(FOOTER_ID_PLAY, true);\r
- __isRecording = false;\r
-}\r
-\r
-//Player\r
-void\r
-AudioRouteForm::OnPlayerOpened(result r)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerEndOfClip(void)\r
-{\r
- AppLog("Enter");\r
- ShowFooterItem(FOOTER_ID_RECORD, true);\r
- SetFooterItem(FOOTER_ID_PLAY, "Play", ID_BUTTON_PLAY);\r
- ShowActiveButtons();\r
- __isPlaying = false;\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerSeekCompleted(result r)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerBuffering(int percent)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerErrorOccurred(PlayerErrorReason r)\r
-{\r
- AppLog("Enter");\r
- ShowMessageBox("Error", "Player Error Occured\n(%s)", GetErrorMessage(r));\r
- ShowFooterItem(FOOTER_ID_RECORD, true);\r
- SetFooterItem(FOOTER_ID_PLAY, "Play", ID_BUTTON_PLAY);\r
- ShowActiveButtons();\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerInterrupted(void)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerAudioFocusChanged(void)\r
-{\r
- AppLog("Enter");\r
- ShowFooterItem(FOOTER_ID_RECORD, true);\r
- SetFooterItem(FOOTER_ID_PLAY, "Play", ID_BUTTON_PLAY);\r
- ShowActiveButtons();\r
-}\r
-\r
-void\r
-AudioRouteForm::OnPlayerReleased(void)\r
-{\r
- AppLog("Enter");\r
-}\r
-\r
-void\r
-AudioRouteForm::OnActiveAudioRouteChanged(const AudioRouteInfo& route)\r
-{\r
- AppLog("Enter");\r
- __currentInputDevice = route.GetInputAudioDevice();\r
- __currentOutputDevice = route.GetOutputAudioDevice();\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
-}\r
-\r
-void\r
-AudioRouteForm::OnAudioRouteAdded(const AudioRouteInfo& route)\r
-{\r
- AppLog("Input - %d Output",route.GetInputAudioDevice(), route.GetOutputAudioDevice());\r
- AppLog("In Available Input - %d %d ", __numInputAvail, __numOutputAvail);\r
- InitAudioDeviceStructures();\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
-}\r
-void\r
-AudioRouteForm::OnAudioRouteRemoved(const AudioRouteInfo& route)\r
-{\r
- AppLog("Input - %d Output",route.GetInputAudioDevice(), route.GetOutputAudioDevice());\r
- InitAudioDeviceStructures();\r
- UpdateInputDevices();\r
- UpdateOutputDevices();\r
-}\r
-\r
-IList*\r
-AudioRouteForm::GetSupportedOutDevicesN(InputAudioDevice in)\r
-{\r
- IList* pOutList = new (std::nothrow)ArrayList();\r
- TryReturn(pOutList, null, "[E_OUT_OF_MEMORY] can't allocate memory for ArrayList");\r
- int count = __pAudioDeviceList->GetCount();\r
- AppLog("count for input %ls - %d",INPUT_DEVICE_LIST[in], count);\r
- for(int i = 0; i < count; i ++)\r
- {\r
- AudioRouteInfo *pAudioDevice = (AudioRouteInfo *)__pAudioDeviceList->GetAt(i);\r
- if(pAudioDevice->GetInputAudioDevice() == in)\r
- {\r
- Long *pArrayItem = new (std::nothrow) Long((Long)pAudioDevice->GetOutputAudioDevice());\r
- AppLog("Out Device - %S", INPUT_DEVICE_LIST[pAudioDevice->GetOutputAudioDevice()]);\r
- if (pArrayItem)\r
- {\r
- pOutList->Add(*pArrayItem);\r
- }\r
- }\r
- }\r
- return pOutList;\r
-}\r
-\r
-IList*\r
-AudioRouteForm::GetSupportedInDevicesN(OutputAudioDevice out)\r
-{\r
- IList* pOutList = new (std::nothrow)ArrayList();\r
- TryReturn(pOutList, null, "[E_OUT_OF_MEMORY] can't allocate memory for ArrayList");\r
- int count = __pAudioDeviceList->GetCount();\r
- AppLog("count for input %ls - %d",OUTPUT_DEVICE_LIST[out], count);\r
- for(int i = 0; i < count; i ++)\r
- {\r
- AudioRouteInfo *pAudioDevice = (AudioRouteInfo *)__pAudioDeviceList->GetAt(i);\r
- if(pAudioDevice->GetOutputAudioDevice() == out)\r
- {\r
- Long *pArrayItem = new (std::nothrow) Long((Long)pAudioDevice->GetInputAudioDevice());\r
- AppLog("In Device - %ls", INPUT_DEVICE_LIST[pAudioDevice->GetInputAudioDevice()]);\r
- if (pArrayItem)\r
- {\r
- pOutList->Add(*pArrayItem);\r
- }\r
- }\r
- }\r
- return pOutList;\r
-}\r
+++ /dev/null
-//\r
-// Tizen C++ SDK\r
-// Copyright (c) 2012 Samsung Electronics Co., Ltd.\r
-//\r
-// Licensed under the Flora License, Version 1.0 (the License);\r
-// you may not use this file except in compliance with the License.\r
-// You may obtain a copy of the License at\r
-//\r
-// http://www.tizenopensource.org/license\r
-//\r
-// Unless required by applicable law or agreed to in writing, software\r
-// distributed under the License is distributed on an AS IS BASIS,\r
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-// See the License for the specific language governing permissions and\r
-// limitations under the License.\r
-//\r
-#include <FBase.h>\r
-#include <FSystem.h>\r
-#include <FUi.h>\r
-#include <FMedia.h>\r
-#include <FMediaAudioRouteInfo.h>\r
-#include <FMediaAudioManagerTypes.h>\r
-#include <FMediaAudioRouteManager.h>\r
-#include <FMediaIAudioRouteEventListener.h>\r
-#include <FIo.h>\r
-#include "MultiForm.h"\r
-\r
-#ifndef _AUDIO_ENH_DEFAULT_PLAYER_H_\r
-#define _AUDIO_ENH_DEFAULT_PLAYER_H_\r
-\r
-class RouteListRemover\r
-{\r
-public:\r
- void operator()(Tizen::Base::Collection::ArrayList *pList) const\r
- {\r
- if (pList != null)\r
- {\r
- pList->RemoveAll(true);\r
- delete pList;\r
- }\r
- }\r
- void operator()(Tizen::Base::Collection::IList *pList) const\r
- {\r
- if (pList != null)\r
- {\r
- pList->RemoveAll(true);\r
- delete pList;\r
- }\r
- }\r
-};\r
-\r
-class AudioRouteForm\r
- : public MultiForm\r
- , public Tizen::Media::IPlayerEventListener\r
- , public Tizen::Media::IAudioRecorderEventListener\r
- , public Tizen::Media::IAudioRouteEventListener\r
- , public Tizen::Ui::Scenes::ISceneEventListener\r
-{\r
-public:\r
- AudioRouteForm(void);\r
- virtual ~AudioRouteForm(void);\r
- bool Initialize(void);\r
- AudioRouteForm* GetListener(void);\r
- static AudioRouteForm* CreateFormN(const Tizen::Ui::Scenes::SceneId &sceneId);\r
- static MultiForm* FormCreateFunc();\r
- static String GetFormId();\r
- static Tizen::Ui::Scenes::SceneId GetSceneId();\r
-\r
- void OnFormBackRequested(Tizen::Ui::Controls::Form& source);\r
- virtual result OnInitializing(void);\r
- result OnActivate(void* pParam);\r
- virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);\r
- virtual void OnBackground(void);\r
- void OnBatteryLevelChanged(Tizen::System::BatteryLevel batteryLevel);\r
-\r
- //IPlayerEventListener\r
- virtual void OnPlayerOpened(result r);\r
- virtual void OnPlayerEndOfClip(void);\r
- virtual void OnPlayerSeekCompleted(result r);\r
- virtual void OnPlayerBuffering(int percent);\r
- virtual void OnPlayerErrorOccurred(Tizen::Media::PlayerErrorReason r);\r
- virtual void OnPlayerInterrupted(void);\r
- virtual void OnPlayerReleased(void);\r
- virtual void OnPlayerAudioFocusChanged(void);\r
-\r
- virtual void OnAudioRecorderStopped(result r);\r
- virtual void OnAudioRecorderCanceled(result r);\r
- virtual void OnAudioRecorderPaused(result r);\r
- virtual void OnAudioRecorderStarted(result r);\r
- virtual void OnAudioRecorderEndReached(Tizen::Media::RecordingEndCondition endCondition);\r
- virtual void OnAudioRecorderClosed(result r);\r
- virtual void OnAudioRecorderErrorOccurred(Tizen::Media::RecorderErrorReason r);\r
-\r
- void OnActiveAudioRouteChanged(const Tizen::Media::AudioRouteInfo& route);\r
- void OnAudioRouteAdded(const Tizen::Media::AudioRouteInfo& route);\r
- void OnAudioRouteRemoved(const Tizen::Media::AudioRouteInfo& route);\r
-\r
- //ISceneEventListener\r
- virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,\r
- const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs);\r
- virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId,\r
- const Tizen::Ui::Scenes::SceneId& nextSceneId);\r
- static RouteListRemover remover;\r
-protected:\r
- static const int MAX_INPUT_DEVICE = 4;\r
- static const int MAX_OUTPUT_DEVICE = 10;\r
- static const wchar_t* INPUT_DEVICE_LIST[];\r
- static const wchar_t* OUTPUT_DEVICE_LIST[];\r
- static const int ID_BUTTON_RESET = 100;\r
- static const int ID_BUTTON_RECORD = 101;\r
- static const int ID_BUTTON_PLAY = 102;\r
- static const int FOOTER_ID_RESET = 0;\r
- static const int FOOTER_ID_RECORD = 1;\r
- static const int FOOTER_ID_PLAY = 2;\r
- static const int ID_INPUT_BUTTON_BASE = 300;\r
- static const int ID_OUTPUT_BUTTON_BASE = 400;\r
-private:\r
- Tizen::Base::Collection::IList* GetSupportedOutDevicesN(Tizen::Media::InputAudioDevice in);\r
- Tizen::Base::Collection::IList* GetSupportedInDevicesN(Tizen::Media::OutputAudioDevice out);\r
- void ShowActiveButtons(void);\r
- void UpdateOutputDevices(void);\r
- void UpdateInputDevices(void);\r
- void DeactivateButtons(void);\r
- void InitAudioDeviceStructures(void);\r
-\r
- result StartPlayer(void);\r
- void StopPlayer(void);\r
- result StartRecorder(void);\r
- result StopRecorder(void);\r
-\r
- void RouteAudio(void);\r
-\r
- Tizen::Media::AudioRouteManager* __pAudioRouteManager;\r
- std::unique_ptr<Tizen::Base::Collection::IList, RouteListRemover> __pAudioDeviceList;\r
- std::unique_ptr<Tizen::Media::Player> __pPlayer;\r
- std::unique_ptr<Tizen::Media::AudioRecorder> __pAudioRecorder;\r
- Tizen::Media::InputAudioDevice __currentInputDevice;\r
- Tizen::Media::OutputAudioDevice __currentOutputDevice;\r
- Tizen::Media::InputAudioDevice __toRouteInputDevice;\r
- Tizen::Media::OutputAudioDevice __toRouteOutputDevice;\r
- int __inputList[MAX_INPUT_DEVICE];\r
- int __outputList[MAX_OUTPUT_DEVICE];\r
- Tizen::Media::InputAudioDevice __inListContent[MAX_INPUT_DEVICE];\r
- Tizen::Media::OutputAudioDevice __outListContent[MAX_OUTPUT_DEVICE];\r
- Tizen::Ui::Controls::Button* __pInputDeviceButtons[MAX_INPUT_DEVICE];\r
- Tizen::Ui::Controls::Button* __pOutputDeviceButtons[MAX_OUTPUT_DEVICE];\r
- Tizen::Ui::Controls::Label* __pLabelActiveIn;\r
- Tizen::Ui::Controls::Label* __pLabelActiveOut;\r
- AppConfig* __pAppConfig;\r
- int __numInputAvail;\r
- int __numOutputAvail;\r
- bool __isOutChecked;\r
- bool __isInChecked;\r
- friend class OutputListProvider;\r
- friend class InputListProvider;\r
- Tizen::Graphics::Color __defaulTextColor;\r
- Tizen::Graphics::Color __routingTextColor;\r
- Tizen::Base::String __filePath;\r
- bool __isRecording;\r
- bool __isPlaying;\r
-};\r
-\r
-#endif\r
-\r