// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef MEDIA_BASE_DECODER_STATUS_H_ #define MEDIA_BASE_DECODER_STATUS_H_ #include <ostream> #include "base/time/time.h" #include "media/base/decoder_buffer.h" #include "media/base/media_export.h" #include "media/base/status.h" namespace media { struct DecoderStatusTraits { … }; DecoderStatus; MEDIA_EXPORT std::ostream& operator<<(std::ostream& os, const DecoderStatus& status); // Helper class for ensuring that Decode() traces are properly unique and closed // if the Decode is aborted via a WeakPtr invalidation. We use the |this| // pointer of the ScopedDecodeTrace object itself as the id. Since the callback // owns the class it's guaranteed to be unique. class MEDIA_EXPORT ScopedDecodeTrace { … }; } // namespace media #endif // MEDIA_BASE_DECODER_STATUS_H_