📄 options.h
字号:
//// The contents of this file are subject to the Mozilla Public License// Version 1.0 (the "License"); you may not use this file except in// compliance with the License. You may obtain a copy of the License at// http://www.mozilla.org/MPL/// // Software distributed under the License is distributed on an "AS IS"// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See// the License for the specific language governing rights and limitations// under the License.// // The Original Code is CPhone, a cross platform voip gui.//// The Initial Developer of the Original Code is Derek Smithies.//// Copyright (C) 2002 Indranet Technologies Ltd, // http://www.indranet-technologies.com// All Rights Reserved.//// Contributor(s): _______________/* * * $Log: options.h,v $ * Revision 1.2 2003/04/04 04:37:49 dereksmithies * Major upgrade. * Ixj & microtelco support added. Fix threading issues. * * Revision 1.1.1.1 2002/05/12 22:55:04 dereksmithies * Initial release. * * * * */#ifndef _CPhone_OPTIONS_H#define _CPhone_OPTIONS_H#include <ptlib.h>class MainUserInterface;class AudioOptions;class VideoOptions;class LocalVideoDisplayThread;class CpEndPoint;class H323VideoCodec;class CpVideoChannel;class AudioOptions : public PObject{ PCLASSINFO(AudioOptions, PObject); AudioOptions(); ~AudioOptions(); public: BOOL Initialise(); BOOL SaveSettings(); void PrintOn(ostream & str) const; BOOL DisableSilenceChange(); BOOL DisableSilenceChange(BOOL newDisableSilence); BOOL EchoCancellationChange(); BOOL EchoCancellationChange(QString newEchoCancellation); BOOL BuffersChange(); BOOL BuffersChange(int newBuffers); BOOL JitterBufferSizeChange(); BOOL JitterBufferSizeChange(int newJitterBufferSize); BOOL VolumeMicrophoneChange(); BOOL VolumeMicrophoneChange(int newVolumeMicrophone); BOOL VolumeSpeakerChange(); BOOL VolumeSpeakerChange(int newVolumeSpeaker); BOOL AudioDeviceChange(); BOOL AudioDeviceChange(PString newAudioDevice); BOOL GetDisableSilence(); int GetBuffers(); int GetJitterBufferSize(); int GetVolumeMicrophone(); int GetVolumeSpeaker(); PString GetAudioDevice(); PString GetEchoCancellation(); void AttachAudioChannel(BOOL isEncoding, PChannel *newChannel); protected: BOOL disableSilence; int buffers; int jitterBufferSize; int volumeMicrophone; int volumeSpeaker; PSoundChannel *encodingChannel; PSoundChannel *receiveChannel; PString audioDevice; PString echoCancellation;};///////////////////////////////////////////////////class ConnectOptions : public PObject{ PCLASSINFO(ConnectOptions, PObject); ConnectOptions(); ~ConnectOptions(); public: BOOL Initialise(); BOOL SaveSettings(); void PrintOn(ostream & str) const; PString gatekeeperName; BOOL searchForGatekeeper; PString externalNatAddress; PString microTelcoAccount; PString microTelcoPassword; BOOL autoAnswer; BOOL noFastStart; BOOL noH245Tunnelling; BOOL doNatTraversal; BOOL doMicroTelco; BOOL videoReceptionEnabled; BOOL videoTransmissionEnabled; BOOL useDefaultAudioBandwidth; BOOL useDefaultVideoBandwidth; int audioBandwidth; int videoBandwidth; int packetUtilization; int lowUdpPort; int highUdpPort; PString userName; PStringList GetAvailableCapabilities(); PStringList GetDisabledCapabilities(); PStringList GetEnabledCapabilities(); void SetAvailableCapabilities(PStringList newCapabilities); void SetEnabledCapabilities(PStringList newCapabilities); void LoadCapabilitiesFromDisk(); protected: void UpdateDisabledCapabilities(); PMutex access; PStringList availableCapabilities; PStringList disabledCapabilities; PStringList enabledCapabilities;};///////////////////////////////////////////////////class VideoOptions : public PObject{ PCLASSINFO(VideoOptions, PObject); VideoOptions(); ~VideoOptions(); public: void AttachVideoChannels(CpVideoChannel *newRxChannel, CpVideoChannel *newTxChannel); BOOL Initialise(); BOOL SaveSettings(); void PrintOn(ostream & str) const; void AttachVideoCodec(H323VideoCodec *newCodec); BOOL DeviceChange(); BOOL DeviceChange(PString newDevice); BOOL FormatChange(); BOOL FormatChange(BOOL usePalFormat); BOOL ChannelChange(); BOOL ChannelChange(int newChannel); BOOL ColourFormatChange(); BOOL ColourFormatChange(PString newColourFormat); BOOL FrameRateChange(); BOOL FrameRateChange(int newFrameRate); BOOL FrameSizeChange(); BOOL FrameSizeChange(BOOL newUseLargeSize); BOOL LocalVideoOrientationChange(); BOOL LocalVideoOrientationChange(BOOL newFlipLocal); BOOL ReceivedVideoOrientationChange(); BOOL ReceivedVideoOrientationChange(BOOL newFlipReceived); BOOL BrightnessChange(); BOOL BrightnessChange(int newBrightness); BOOL ColourChange(); BOOL ColourChange(int newColour); BOOL ContrastChange(); BOOL ContrastChange(int newContrast); BOOL HueChange(); BOOL HueChange(int newHue); BOOL WhitenessChange(); BOOL WhitenessChange(int newWhiteness); BOOL DisplayLocalChange(); BOOL DisplayLocalChange(BOOL newDisplayLocal); BOOL TransmitQualityChange(); BOOL TransmitQualityChange(int newTxQuality); BOOL ReceivedQualityChange(); BOOL ReceivedQualityChange(int newRxQuality); PStringList GetFakeVideoDevices(); PStringList GetRealVideoDevices(); PStringList GetAllVideoDevices(); void GetVideoFrameSizeSetting (unsigned &newFrameWidth, unsigned &newFrameHeight); BOOL AttachPlayerReaderToVideoChannel(BOOL isEncoding); PVideoInputDevice *GetNewVideoGrabber(); int GetBrightness(); int GetColour(); int GetContrast(); int GetHue(); int GetWhiteness(); int GetInputChannel(); int GetReceiveQuality(); int GetTransmitQuality(); BOOL GetPalFormat(); BOOL GetNtscFormat(); BOOL GetUseLargeSize(); BOOL GetDisplayLocal(); BOOL GetFlipLocal(); BOOL GetFlipReceived(); PString GetVideoDevice(); protected: // only used internally CpVideoChannel *rxChannel; CpVideoChannel *txChannel; int brightness; int colour; int contrast; int hue; int whiteness; int inputChannel; int receiveQuality; int transmitQuality; BOOL palFormat; BOOL ntscFormat; BOOL useLargeSize; BOOL displayLocal; BOOL flipLocal; BOOL flipReceived; PString videoDevice; PStringList fakeVideoDevices; PStringList realVideoDevices; H323VideoCodec *codec;};#endif //_CPhone_OPTIONS_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -