亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pstaocomponentgroup.cpp

?? 基于sipfoundy 公司開發(fā)的sipx協(xié)議API
?? CPP
字號(hào):
//// Copyright (C) 2004, 2005 Pingtel Corp.// //// $$//////////////////////////////////////////////////////////////////////////////// SYSTEM INCLUDES#include <assert.h>// APPLICATION INCLUDES#include "ps/PsTaoComponentGroup.h"#include "ps/PsTaoComponent.h"#include "ps/PsTaoSpeaker.h"#include "ps/PsTaoRinger.h"#include "ps/PsTaoMicrophone.h"// EXTERNAL FUNCTIONS// EXTERNAL VARIABLES// CONSTANTS// STATIC VARIABLE INITIALIZATIONS/* //////////////////////////// PUBLIC //////////////////////////////////// *//* ============================ CREATORS ================================== */// ConstructorPsTaoComponentGroup::PsTaoComponentGroup() :mpComponents(NULL),mGroupType(0),mIsActivated(0),mNumItems(0){        mHandsetVolume = -1;        mHeadsetVolume = -1;        mRingerVolume = -1;        mSpeakerVolume = -1;        mExtSpeakerVolume = -1;        mLow = 0;        mHigh = 100;        mNominal = 50;        mStepsize = 10;        mMute = 0;        mMicLow = 0;        mMicHigh = 100;        mMicNominal = 50;        mMicStepsize = 10;        mMicMute = 0;        mMicGain = mMicNominal;}PsTaoComponentGroup::PsTaoComponentGroup(int groupType, const UtlString& rDescription,                                                                                 PsTaoComponent* pComponents[], int nItems) :mpComponents(NULL),mGroupType(groupType),mIsActivated(0),mNumItems(nItems){        if (pComponents && nItems > 0)        {                mpComponents = new PsTaoComponent*[nItems+1];                if (mpComponents)                {                        for (int i = 0; i < nItems; i++)                                mpComponents[i] = pComponents[i];                }        }        mDescription = rDescription;        mHandsetVolume = -1;        mHeadsetVolume = -1;        mRingerVolume = -1;        mSpeakerVolume = -1;        mExtSpeakerVolume = -1;        mLow = 0;        mHigh = 100;        mNominal = 50;        mStepsize = 10;        mMute = 0;        mMicLow = 0;        mMicHigh = 100;        mMicNominal = 50;        mMicStepsize = 10;        mMicMute = 0;        mMicGain = mMicNominal;}// Copy constructorPsTaoComponentGroup::PsTaoComponentGroup(const PsTaoComponentGroup& rPsTaoComponentGroup) :mpComponents(NULL),mGroupType(0),mIsActivated(0),mNumItems(0){        mHandsetVolume = rPsTaoComponentGroup.mHandsetVolume;        mHeadsetVolume = rPsTaoComponentGroup.mHeadsetVolume;        mRingerVolume = rPsTaoComponentGroup.mRingerVolume;        mSpeakerVolume = rPsTaoComponentGroup.mSpeakerVolume;        mExtSpeakerVolume = rPsTaoComponentGroup.mExtSpeakerVolume;        mLow = rPsTaoComponentGroup.mLow;        mHigh = rPsTaoComponentGroup.mHigh;        mNominal = rPsTaoComponentGroup.mNominal;        mStepsize = rPsTaoComponentGroup.mStepsize;        mMute = rPsTaoComponentGroup.mMute;        mMicLow = rPsTaoComponentGroup.mMicLow;        mMicHigh = rPsTaoComponentGroup.mMicHigh;        mMicNominal = rPsTaoComponentGroup.mMicNominal;        mMicStepsize = rPsTaoComponentGroup.mMicStepsize;        mMicMute = rPsTaoComponentGroup.mMicMute;        mMicGain = rPsTaoComponentGroup.mMicGain;}// DestructorPsTaoComponentGroup::~PsTaoComponentGroup(){        if (mpComponents)                delete[] mpComponents;        mDescription.remove(0);}/* ============================ MANIPULATORS ============================== */// Assignment operatorPsTaoComponentGroup&PsTaoComponentGroup::operator=(const PsTaoComponentGroup& rhs){   if (this == &rhs)            // handle the assignment to self case      return *this;        mHandsetVolume = rhs.mHandsetVolume;        mHeadsetVolume = rhs.mHeadsetVolume;        mRingerVolume = rhs.mRingerVolume;        mSpeakerVolume = rhs.mSpeakerVolume;        mExtSpeakerVolume = rhs.mExtSpeakerVolume;        mLow = rhs.mLow;        mHigh = rhs.mHigh;        mNominal = rhs.mNominal;        mStepsize = rhs.mStepsize;        mMute = rhs.mMute;        mMicLow = rhs.mMicLow;        mMicHigh = rhs.mMicHigh;        mMicNominal = rhs.mMicNominal;        mMicStepsize = rhs.mMicStepsize;        mMicMute = rhs.mMicMute;        mMicGain = rhs.mMicGain;        return *this;}OsStatus PsTaoComponentGroup::setVolumeRange(int low,                      int high,                      int nominal,                      int stepsize,                      int mute){        mLow = low;        mHigh = high;        mNominal = nominal;        mStepsize = (high - low) / 10;        mMute = mute;        osPrintf("PsTaoComponentGroup::setVolumeRange: groupt type: %d, low:"            " %d, high: %d,\n   nominal: %d, mute: %d, stepsize %d %d\n",            mGroupType, mLow, mHigh, mNominal, mMute, mStepsize, stepsize);        switch (mGroupType)        {        case HEAD_SET:                mHeadsetVolume = mNominal;                break;        case HAND_SET:                mHandsetVolume = mNominal;                break;        case SPEAKER_PHONE:                mSpeakerVolume = mNominal;                mRingerVolume = mNominal;                break;        case EXTERNAL_SPEAKER:                mExtSpeakerVolume = mNominal;                break;        case PHONE_SET:                mRingerVolume = mNominal;                break;        case OTHER:        default:                break;        }        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setGainRange(int low,                      int high,                      int nominal,                      int stepsize,                      int mute){        mMicLow = low;        mMicHigh = high;        mMicNominal = nominal;        mMicStepsize = (high - low) / 10;        mMicMute = mute;        mMicGain = mMicNominal;        osPrintf("PsTaoComponentGroup::setGainRange: groupt type: %d, low:"            " %d, high: %d,\n   nominal: %d, current: %d mute: %d, stepsize %d %d\n",            mGroupType, mMicLow, mMicHigh, mMicNominal, mMicGain, mMicMute,            mMicStepsize, stepsize);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setHandsetVolume(int& level) // input 0 <= level <= 10{        mHandsetVolume = normalize(level);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setHeadsetVolume(int& level) // input 0 <= level <= 10{        mHeadsetVolume = normalize(level);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setSpeakerVolume(int& level) // input 0 <= level <= 10{        mSpeakerVolume = normalize(level);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setExtSpeakerVolume(int& level) // input 0 <= level <= 10{        mExtSpeakerVolume = normalize(level);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setRingerVolume(int& level) // input 0 <= level <= 10{        mRingerVolume = normalize(level);        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::setMicGain(int group, int& level){    if (mGroupType == group)    {        if (level == 5)        {            mMicGain = mMicNominal;        }        else        {            mMicGain = gainNormalize(level);        }                osPrintf("PsTaoComponentGroup::setMicGain: groupt type: %d, level %d mMicGain %d (is not set)\n", group, level, mMicGain);        assert(false);        return OS_SUCCESS;    }    return OS_INVALID_ARGUMENT;}UtlBoolean PsTaoComponentGroup::activate(void){        mIsActivated = true;        return true;}UtlBoolean PsTaoComponentGroup::deactivate(void){        mIsActivated = false;        return true;}/* ============================ ACCESSORS ================================= */OsStatus PsTaoComponentGroup::getVolume(int groupType, int& level)   // mLow <= level <= mHigh{        switch (groupType)        {        case HEAD_SET:                level = mHeadsetVolume;                break;        case HAND_SET:                level = mHandsetVolume;                break;        case SPEAKER_PHONE:                level = mSpeakerVolume;                break;        case EXTERNAL_SPEAKER:                level = mExtSpeakerVolume;                break;        case PHONE_SET:                level = mRingerVolume;                break;        case OTHER:        default:                level = mNominal;                break;        }        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getHandsetVolume(int& level, int isNominal) // output 0 <= level <= 10{        if (isNominal)        {                level = (mNominal - mLow) / mStepsize;                return OS_SUCCESS;        }        if (mHandsetVolume == mMute)                level = 0;        else                level = (mHandsetVolume - mLow) / mStepsize;        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getHeadsetVolume(int& level, int isNominal) // output 0 <= level <= 10{        if (isNominal)        {                level = (mNominal - mLow) / mStepsize;                return OS_SUCCESS;        }        if (mHeadsetVolume == mMute)                level = 0;        else                level = (mHeadsetVolume - mLow) / mStepsize;        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getSpeakerVolume(int& level, int isNominal) // output 0 <= level <= 10{        if (isNominal)        {                level = (mNominal - mLow) / mStepsize;                return OS_SUCCESS;        }        if (mSpeakerVolume == mMute)                level = 0;        else                level = (mSpeakerVolume - mLow) / mStepsize;        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getExtSpeakerVolume(int& level, int isNominal) // output 0 <= level <= 10{        if (isNominal)        {                level = (mNominal - mLow) / mStepsize;                return OS_SUCCESS;        }        if (mExtSpeakerVolume == mMute)                level = 0;        else                level = (mExtSpeakerVolume - mLow) / mStepsize;        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getRingerVolume(int& level, int isNominal) // output 0 <= level <= 10{        if (isNominal)        {                level = (mNominal - mLow) / mStepsize;                return OS_SUCCESS;        }        if (mRingerVolume == mMute)                level = 0;        else                level = (mRingerVolume - mLow) / mStepsize;        return OS_SUCCESS;}OsStatus PsTaoComponentGroup::getMicGain(int group, int& level){        if (group == mGroupType)        {                if (mMicGain == mMicMute)                        level = 0;                else if (mMicGain == mMicNominal)                        level = 5;                else                        level = (mMicGain - mMicLow) / mMicStepsize;        osPrintf("PsTaoComponentGroup::getMicGain: groupt type: %d, level %d mMicGain %d, mMicLow %d mMicStepsize %d\n",                                                                        group, level, mMicGain, mMicLow, mMicStepsize);                return OS_SUCCESS;        }        return OS_INVALID_ARGUMENT;}OsStatus PsTaoComponentGroup::getMicGainValue(int group, int& value){        if (group == mGroupType)        {                value = mMicGain;                return OS_SUCCESS;        }        return OS_INVALID_ARGUMENT;}/* ============================ INQUIRY =================================== *//* //////////////////////////// PROTECTED ///////////////////////////////// *//* //////////////////////////// PRIVATE /////////////////////////////////// */int PsTaoComponentGroup::normalize(int& level){        if (level < 0)                level = mNominal;        else if (level == 0)                level = mMute;        else                level = mStepsize * level + mLow;        if(level > mHigh)                level = mHigh;        return level;}int PsTaoComponentGroup::gainNormalize(int& level){        if (level < 0)                level = mMicNominal;        else if (level == 0)                level = mMicMute;        else                level = mMicStepsize * level + mMicLow;        if(level > mMicHigh)                level = mMicHigh;        return level;}/* ============================ FUNCTIONS ================================= */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品午夜在线| 91精品国产一区二区三区| 一区二区三区四区高清精品免费观看| 欧美日韩综合一区| 国产成人一区二区精品非洲| 亚洲国产精品影院| 国产精品久久久久久久久久久免费看| 91精品国产色综合久久不卡电影 | 久久成人羞羞网站| 亚洲五月六月丁香激情| 综合自拍亚洲综合图不卡区| 精品国产免费一区二区三区四区| 欧美自拍偷拍一区| 成人黄色小视频在线观看| 国产一区二区在线视频| 欧美a级理论片| 亚洲成人av电影在线| 亚洲视频精选在线| 欧美韩日一区二区三区| 日韩精品一区在线| 日韩视频在线永久播放| 欧美精品在线视频| 欧美视频在线不卡| 欧美综合天天夜夜久久| 一本色道**综合亚洲精品蜜桃冫| caoporm超碰国产精品| 国产精品一卡二| 国产米奇在线777精品观看| 捆绑调教一区二区三区| 蜜桃视频第一区免费观看| 日本大胆欧美人术艺术动态| 亚洲电影一级片| 亚洲一区二区三区爽爽爽爽爽| 自拍视频在线观看一区二区| 亚洲视频狠狠干| 中文字幕字幕中文在线中不卡视频| 亚洲国产精品精华液2区45| 久久久www成人免费毛片麻豆 | 免费日本视频一区| 免费亚洲电影在线| 狠狠色丁香婷综合久久| 国产精品一二三在| 国产盗摄视频一区二区三区| 国v精品久久久网| 成人午夜免费电影| 色综合亚洲欧洲| 色8久久人人97超碰香蕉987| 欧美性生活久久| 欧美巨大另类极品videosbest| 欧美一区二区私人影院日本| 日韩午夜电影av| 久久综合九色综合欧美98| 久久久久久9999| 日韩一区在线看| 亚洲一区二区三区四区在线观看 | 色哟哟一区二区在线观看| 99久久久精品| 色狠狠av一区二区三区| 欧美美女网站色| 精品国产第一区二区三区观看体验| 久久精品一区二区三区不卡牛牛| 国产精品久久久久久一区二区三区| 亚洲欧美日韩国产手机在线| 亚洲午夜av在线| 国产一区久久久| 色婷婷av一区二区三区之一色屋| 欧美人与性动xxxx| 久久婷婷久久一区二区三区| 中文字幕一区免费在线观看| 午夜影院在线观看欧美| 日本少妇一区二区| 懂色av一区二区三区免费观看| 99免费精品视频| 欧美一区二区免费观在线| www激情久久| 亚洲福利视频三区| 精品一区二区在线播放| 色av一区二区| 久久嫩草精品久久久精品| 亚洲在线中文字幕| 精品一区二区av| 一本一本久久a久久精品综合麻豆| 91精品国模一区二区三区| 国产欧美日韩另类一区| 亚洲成av人片观看| 国产91丝袜在线播放0| 欧美午夜精品一区二区三区 | 亚洲色图在线播放| 日本aⅴ亚洲精品中文乱码| 成人福利视频在线看| 欧美一区二区啪啪| 亚洲码国产岛国毛片在线| 久久精品噜噜噜成人av农村| 在线视频亚洲一区| 国产亚洲一区字幕| 日本亚洲欧美天堂免费| 91视频你懂的| 久久久久久99精品| 日本成人超碰在线观看| 91久久精品一区二区三| 久久久精品影视| 久久www免费人成看片高清| 在线观看国产一区二区| 国产精品美女久久久久久久网站| 国产在线麻豆精品观看| 欧美性三三影院| 中文字幕一区二区三区在线播放| 久久福利视频一区二区| 91精品国产乱码久久蜜臀| 一区二区三区视频在线看| 国产成人免费av在线| 欧美videos大乳护士334| 亚洲成国产人片在线观看| av激情综合网| 欧美极品少妇xxxxⅹ高跟鞋 | 色综合久久中文综合久久牛| 亚洲精品一区在线观看| 日产国产欧美视频一区精品| 欧美日韩在线综合| 一区二区三区日本| 一本色道久久综合狠狠躁的推荐| 国产精品色婷婷久久58| 国产伦精品一区二区三区免费迷 | 在线视频综合导航| 亚洲免费在线播放| 91视视频在线观看入口直接观看www | 国产suv精品一区二区6| 欧美精品一区二区久久久| 蜜桃视频在线观看一区| 日韩午夜电影av| 紧缚捆绑精品一区二区| 日韩女优制服丝袜电影| 久久精品国产99| 精品国产sm最大网站| 久久精品免费看| 久久久久久电影| 成人免费毛片高清视频| 亚洲国产成人在线| 成人一级片在线观看| 久久精品视频在线看| 国产精品一区二区男女羞羞无遮挡 | 欧美日韩精品一区二区三区| 亚洲尤物在线视频观看| 欧美日韩在线三区| 丝袜亚洲另类欧美综合| 日韩限制级电影在线观看| 韩国三级电影一区二区| 国产精品网友自拍| 91视频免费播放| 亚洲国产欧美在线| 欧美一二三区精品| 国产一区二区三区在线观看精品 | 国产亚洲欧美一区在线观看| 国产高清无密码一区二区三区| 中文字幕免费不卡在线| 色综合天天综合| 日日骚欧美日韩| 欧美精品一区在线观看| jlzzjlzz亚洲日本少妇| 亚洲第一av色| 久久久久久99精品| 色综合一区二区三区| 日韩av在线免费观看不卡| 久久先锋影音av鲁色资源网| 99精品欧美一区| 午夜精品久久久久久久久久| 26uuu亚洲婷婷狠狠天堂| 国产成人鲁色资源国产91色综 | 久国产精品韩国三级视频| 中文字幕欧美三区| 在线观看视频一区二区 | 九九视频精品免费| 亚洲欧洲日韩在线| 欧美一区在线视频| 成人免费视频视频| 日韩中文字幕麻豆| 中文字幕的久久| 91麻豆精品国产91久久久久| 国产精品12区| 日韩精品一级二级| 中文字幕一区av| 欧美一卡2卡三卡4卡5免费| 成人免费毛片app| 日韩高清一区二区| 国产精品免费视频一区| 91精品国产高清一区二区三区| 成人午夜电影小说| 日本不卡视频一二三区| 亚洲激情一二三区| 国产色91在线| 欧美一区日韩一区| 色欧美乱欧美15图片| 激情综合网av| 亚洲v中文字幕| 国产精品久久久久天堂| 2021中文字幕一区亚洲| 在线观看不卡视频| 成人a免费在线看| 国产美女精品一区二区三区| 青青草国产成人99久久|