VCMPacketizationCallback as such. This will make further changes to these classes safer by ensuring that the compile breaks if the base class changes and not all overrides are fixed. This also marks all other such overrides in the affected files. BUG=none TEST=none R=henrike@webrtc.org, stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19319004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7161 4adac7df-926f-26a2-2b94-8c16560cd09d
50 lines
1.7 KiB
C++
50 lines
1.7 KiB
C++
/*
|
|
* Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#ifndef WEBRTC_MODULES_UTILITY_SOURCE_RTP_DUMP_IMPL_H_
|
|
#define WEBRTC_MODULES_UTILITY_SOURCE_RTP_DUMP_IMPL_H_
|
|
|
|
#include "webrtc/modules/utility/interface/rtp_dump.h"
|
|
|
|
namespace webrtc {
|
|
class CriticalSectionWrapper;
|
|
class FileWrapper;
|
|
class RtpDumpImpl : public RtpDump
|
|
{
|
|
public:
|
|
RtpDumpImpl();
|
|
virtual ~RtpDumpImpl();
|
|
|
|
virtual int32_t Start(const char* fileNameUTF8) OVERRIDE;
|
|
virtual int32_t Stop() OVERRIDE;
|
|
virtual bool IsActive() const OVERRIDE;
|
|
virtual int32_t DumpPacket(const uint8_t* packet,
|
|
uint16_t packetLength) OVERRIDE;
|
|
private:
|
|
// Return the system time in ms.
|
|
inline uint32_t GetTimeInMS() const;
|
|
// Return x in network byte order (big endian).
|
|
inline uint32_t RtpDumpHtonl(uint32_t x) const;
|
|
// Return x in network byte order (big endian).
|
|
inline uint16_t RtpDumpHtons(uint16_t x) const;
|
|
|
|
// Return true if the packet starts with a valid RTCP header.
|
|
// Note: See RtpUtility::RtpHeaderParser::RTCP() for details on how
|
|
// to determine if the packet is an RTCP packet.
|
|
bool RTCP(const uint8_t* packet) const;
|
|
|
|
private:
|
|
CriticalSectionWrapper* _critSect;
|
|
FileWrapper& _file;
|
|
uint32_t _startTime;
|
|
};
|
|
} // namespace webrtc
|
|
#endif // WEBRTC_MODULES_UTILITY_SOURCE_RTP_DUMP_IMPL_H_
|