aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Input/in_wmvdrm/WMHandler.cpp
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Plugins/Input/in_wmvdrm/WMHandler.cpp
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/Plugins/Input/in_wmvdrm/WMHandler.cpp')
-rw-r--r--Src/Plugins/Input/in_wmvdrm/WMHandler.cpp181
1 files changed, 181 insertions, 0 deletions
diff --git a/Src/Plugins/Input/in_wmvdrm/WMHandler.cpp b/Src/Plugins/Input/in_wmvdrm/WMHandler.cpp
new file mode 100644
index 00000000..090e1cd7
--- /dev/null
+++ b/Src/Plugins/Input/in_wmvdrm/WMHandler.cpp
@@ -0,0 +1,181 @@
+#include "main.h"
+#include <assert.h>
+
+void WMHandler::OpenFailed()
+{
+ if (next)
+ next->OpenFailed();
+}
+
+void WMHandler::ReOpen()
+{
+ if (next)
+ next->ReOpen();
+}
+
+void WMHandler::Started()
+{
+ if (next)
+ next->Started();
+}
+
+void WMHandler::Stopped()
+{
+ if (next)
+ next->Stopped();
+}
+
+void WMHandler::PreRollComplete()
+{
+ if (next)
+ next->PreRollComplete();
+}
+
+void WMHandler::EndOfFile()
+{
+ if (next)
+ next->EndOfFile();
+}
+
+void WMHandler::Closed()
+{
+ if (next)
+ next->Closed();
+}
+
+void WMHandler::BufferingStarted()
+{
+ if (next)
+ next->BufferingStarted();
+}
+
+void WMHandler::BufferingStopped()
+{
+ if (next)
+ next->BufferingStopped();
+}
+
+void WMHandler::NewMetadata()
+{
+ if (next)
+ next->NewMetadata();
+}
+
+void WMHandler::Individualize()
+{
+ if (next)
+ next->Individualize();
+}
+
+void WMHandler::SignatureState(WMT_DRMLA_TRUST *&state)
+{
+ if (next)
+ next->SignatureState(state);
+}
+
+void WMHandler::NoRightsEx(WM_GET_LICENSE_DATA *&licenseData)
+{
+ if (next)
+ next->NoRightsEx(licenseData);
+}
+
+void WMHandler::AcquireLicense(WM_GET_LICENSE_DATA *&licenseData)
+{
+ if (next)
+ next->AcquireLicense(licenseData);
+}
+
+void WMHandler::AllocateOutput(long outputNum, long bufferSize, INSSBuffer *&buffer)
+{
+ if (next)
+ next->AllocateOutput(outputNum, bufferSize, buffer);
+}
+
+void WMHandler::VideoCatchup(QWORD time)
+{
+ if (next)
+ next->VideoCatchup(time);
+}
+
+void WMHandler::TimeToSync(QWORD timeStamp,__int64 &diff)
+{
+ if (next)
+ next->TimeToSync(timeStamp, diff);
+}
+
+void WMHandler::Error()
+{
+ if (next)
+ next->Error();
+ }
+
+void WMHandler::LicenseRequired()
+{
+ if (next)
+ next->LicenseRequired();
+}
+
+void WMHandler::NoRights(wchar_t *licenseData)
+{
+ if (next)
+ next->NoRights(licenseData);
+}
+
+
+WMHandler::WMHandler() : next(0), prev(0)
+ {}
+ WMHandler::~WMHandler()
+ {
+ if (next)
+ next->prev = prev;
+
+ if (prev)
+ prev->next = next;
+
+ }
+
+ WMHandler &WMHandler::operator << (WMHandler &chain)
+ {
+ assert(chain.next == 0);
+ assert(prev == 0);
+
+ prev = &chain;
+ chain.next = this;
+
+ return chain;
+ }
+
+ WMHandler &WMHandler::operator >> (WMHandler &chain)
+ {
+ if (chain.prev)
+ {
+ operator >>(chain.prev);
+ return chain;
+ }
+
+ assert (next == 0);
+ assert (chain.prev == 0);
+
+ next = &chain;
+ chain.prev = this;
+
+ return chain;
+ }
+ WMHandler&WMHandler::operator << (WMHandler *chain)
+ {
+ return operator <<(*chain);
+ }
+
+ WMHandler &WMHandler::operator >> (WMHandler *chain)
+ {
+ return operator >>(*chain);
+ }
+
+ WMHandler &WMHandler::First()
+ {
+ if (prev)
+ return prev->First();
+ else
+ return *this;
+ }
+