/usr/include/sipxtapi/ptapi/PtPhoneRinger.h is in libsipxtapi-dev 3.3.0~test17-2.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | //
// Copyright (C) 2004-2006 SIPfoundry Inc.
// Licensed by SIPfoundry under the LGPL license.
//
// Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
// Licensed to SIPfoundry under a Contributor Agreement.
//
// $$
///////////////////////////////////////////////////////////////////////////////
#ifndef _PtPhoneRinger_h_
#define _PtPhoneRinger_h_
// SYSTEM INCLUDES
// APPLICATION INCLUDES
#include "ptapi/PtComponent.h"
#include "os/OsTime.h"
#include "os/OsProtectEventMgr.h"
// DEFINES
// MACROS
// EXTERNAL FUNCTIONS
// EXTERNAL VARIABLES
// CONSTANTS
// STRUCTS
// TYPEDEFS
// FORWARD DECLARATIONS
class TaoClientTask;
//:The PtPhoneRinger class models a phone ringer.
class PtPhoneRinger : public PtComponent
{
/* //////////////////////////// PUBLIC //////////////////////////////////// */
public:
enum RingerLevel
{
OFF = 0,
MIDDLE = 5,
FULL = 10
};
//!enumcode: OFF - The ringer is turned off
//!enumcode: MIDDLE - The ringer volume is set to the middle of its range
//!enumcode: FULL - The ringer volume is set to its maximum level
/* ============================ CREATORS ================================== */
PtPhoneRinger();
//:Default constructor
PtPhoneRinger(TaoClientTask *pClient);
PtPhoneRinger(const PtPhoneRinger& rPtPhoneRinger);
//:Copy constructor (not implemented for this class)
PtPhoneRinger& operator=(const PtPhoneRinger& rhs);
//:Assignment operator (not implemented for this class)
virtual
~PtPhoneRinger();
//:Destructor
/* ============================ MANIPULATORS ============================== */
virtual PtStatus setRingerInfo(int patternIndex, char* info);
//:Specifies the information string to associate with the indicated
//:ringer pattern.
// The <i>info</i> text string is used to provide additional
// ringer-related information to the phone system (for example, the
// sound file to associate with this ringer pattern).
//!param: patternIndex - Identifies the pattern whose <i>info</i> string will be modified.
//!param: info - The text string to associate with the specified ringer pattern.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_INVALID_ARGUMENT - Invalid pattern index
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus setRingerPattern(int patternIndex);
//:Sets the ringer pattern given a valid index number.
// The pattern index should be a number between 0 and the value returned
// by getMaxRingPatternIndex().
//!retcode: PT_SUCCESS - Success
//!retcode: PT_INVALID_ARGUMENT - Invalid pattern index
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus setRingerVolume(int volume);
//:Sets the ringer volume to a value between OFF and FULL (inclusive).
//!param: volume - The ringer volume level
//!retcode: PT_SUCCESS - Success
//!retcode: PT_INVALID_ARGUMENT - Invalid volume level
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
/* ============================ ACCESSORS ================================= */
virtual PtStatus getMaxRingPatternIndex(int& rMaxIndex);
//:Sets <i>rMaxIndex</i> to the maximum valid ringer pattern index.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus getNumberOfRings(int& rNumRingCycles);
//:Sets <i>rNumRingCycles</i> to the number of complete ring cycles that the ringer has been ringing.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus getRingerInfo(int patternIndex, char*& rpInfo);
//:Sets <i>rpInfo</i> to point to the information text string that is
//:associated with the specified ringer pattern.
//!param: patternIndex - identifies the pattern whose <i>info</i> string will be modified.
//!param: rpInfo - set to point to the text string associated with the specified ringer pattern.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_INVALID_ARGUMENT - Invalid pattern index
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus getRingerPattern(int& rPatternIndex);
//:Sets <i>rPatternIndex</i> to the index of the current ringer pattern.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
virtual PtStatus getRingerVolume(int& rVolume);
//:Sets <i>rVolume</i> to the current ringer volume level.
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
// virtual PtStatus getName(char*& rpName);
//:Returns the name associated with this component.
//!param: (out) rpName - The reference used to return the name
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
// virtual PtStatus getType(int& rType);
//:Returns the type associated with this component.
//!param: (out) rType - The reference used to return the component type
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
/* ============================ INQUIRY =================================== */
virtual PtStatus isRingerOn(PtBoolean& rIsOn);
//:Sets <i>rIsOn</i> to FALSE if the ringer is OFF and FALSE otherwise.
//!param: (out) rIsOn - TRUE ==> ringer is ON, FALSE ==> ringer is OFF
//!retcode: PT_SUCCESS - Success
//!retcode: PT_PROVIDER_UNAVAILABLE - The provider is not available
/* //////////////////////////// PROTECTED ///////////////////////////////// */
protected:
TaoClientTask *mpClient;
OsTime mTimeOut;
/* //////////////////////////// PRIVATE /////////////////////////////////// */
private:
OsProtectEventMgr *mpEventMgr;
};
/* ============================ INLINE METHODS ============================ */
#endif // _PtPhoneRinger_h_
|