/usr/include/sipxtapi/mi/MiNotification.h is in libsipxtapi-dev 3.3.0~test17-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 160 161 162 163 164 165 166 167 168 169 | //
// Copyright (C) 2007-2011 SIPez LLC. All rights reserved.
// Licensed to SIPfoundry under a Contributor Agreement.
//
// Copyright (C) 2007-2009 SIPfoundry Inc.
// Licensed by SIPfoundry under the LGPL license.
//
// $$
///////////////////////////////////////////////////////////////////////////////
// Author: Keith Kyzivat <kkyzivat AT SIPez DOT com>
#ifndef _MiNotification_h_
#define _MiNotification_h_
// SYSTEM INCLUDES
// APPLICATION INCLUDES
#include "os/OsMsg.h"
#include "utl/UtlString.h"
// DEFINES
// MACROS
// EXTERNAL FUNCTIONS
// EXTERNAL VARIABLES
// CONSTANTS
// STRUCTS
// TYPEDEFS
// FORWARD DECLARATIONS
/**
* @brief Message notification class used to communicate media notification events.
*
* To determine the source of the notification use the following information:
* 1) Test getConnectionId() - if it is >=1, then notification is sent from
* the selected input or output connection. If it is equal to -1, then
* notification is sent from local part (mic and speaker sides).
* 2) If notification belongs to input part of connection, then getStreamId()
* will give you a number of stream in the connection (starting from 0).
* In other cases (output part of connection or local flowgraph part)
* stream ID equals -1.
* 3) getSourceId() returns the name of the resource which sent this notification.
* Use this value to distinguish between several possible senders inside
* one part of the flowgraph, e.g. mic part from speaker part.
*/
class MiNotification : public OsMsg
{
/* //////////////////////////// PUBLIC //////////////////////////////////// */
public:
/// Media notification message types
typedef enum
{
MI_NOTF_MESSAGE_INVALID, ///< Message type is invalid (similar to NULL)
MI_NOTF_PLAY_STARTED,
MI_NOTF_PLAY_PAUSED,
MI_NOTF_PLAY_RESUMED,
MI_NOTF_PLAY_STOPPED,
MI_NOTF_PLAY_FINISHED,
MI_NOTF_PLAY_ERROR,
MI_NOTF_PROGRESS, ///< Value for MiProgressNotf notifications.
MI_NOTF_RECORD_STARTED, ///< Recording started.
MI_NOTF_RECORD_STOPPED, ///< Recording stopped manually (MiIntNotf bears number of recorded samples).
MI_NOTF_RECORD_FINISHED, ///< Recording stopped automatically (MiIntNotf bears number of recorded samples).
MI_NOTF_RECORD_ERROR, ///< Recording stopped because of an error.
MI_NOTF_DTMF_RECEIVED, ///< Value for MiDtmfNotf notifications.
MI_NOTF_DELAY_SPEECH_STARTED,
MI_NOTF_DELAY_NO_DELAY,
MI_NOTF_DELAY_QUIESCENCE,
MI_NOTF_RX_STREAM_ACTIVITY, ///< Value for MiRtpStreamActivityNotf notifications.
MI_NOTF_ENERGY_LEVEL, ///< Audio energy level (MiIntNotf)
MI_NOTF_VOICE_STARTED,
MI_NOTF_VOICE_STOPPED,
MI_NOTF_H264_SPS,
MI_NOTF_H264_PPS
} NotfType;
/// Connection ID that indicates invalid connection or no connection.
static const int INVALID_CONNECTION_ID;
/* ============================ CREATORS ================================== */
///@name Creators
//@{
/// Constructor
MiNotification(NotfType msgType,
const UtlString& sourceId,
int connectionId = INVALID_CONNECTION_ID,
int streamId = -1);
/// Copy constructor
MiNotification(const MiNotification& rNotf);
/// Create a copy of this msg object (which may be of a derived type)
virtual OsMsg* createCopy(void) const;
/// Destructor
virtual ~MiNotification();
//@}
/* ============================ MANIPULATORS ============================== */
///@name Manipulators
//@{
/// Assignment operator
MiNotification& operator=(const MiNotification& rhs);
/// Set the unique source identifier.
void setSourceId(const UtlString& sourceId);
/**<
* Sets the unique identifier of the thing that originated this
* notification.
*/
/// Set the connection ID that this notification is associated with.
void setConnectionId(int connId);
/// @brief Set the stream number inside the connection this notification
/// is associated with.
void setStreamId(int streamId);
//@}
/* ============================ ACCESSORS ================================= */
///@name Accessors
//@{
/// Returns the type of the notification message
NotfType getType(void) const;
/// Get the unique source identifier.
UtlString getSourceId(void) const;
/**<
* Returns the unique identifier of the thing that originated this
* notification.
*/
/// Get the connection ID that this message is associated with.
int getConnectionId() const;
/// @brief Get the stream number inside the connection this notification
/// is associated with.
int getStreamId() const;
//@}
/* ============================ INQUIRY =================================== */
///@name Inquiry
//@{
//@}
/* //////////////////////////// PROTECTED ///////////////////////////////// */
protected:
/* //////////////////////////// PRIVATE /////////////////////////////////// */
private:
UtlString mSourceId; ///< Unique identifier of the thing that originated this notification.
int mConnectionId; ///< If applicable, stores the ID of the connection this
///< notification is associated with. (-1 if N/A)
int mStreamId; ///< If applicable, stores the ID of the stream inside
///< connection this notification is associated with. (-1 if N/A)
};
/* ============================ INLINE METHODS ============================ */
#endif // _MiNotification_h_
|