ACSMDownloader

ACSMDownloader Git Source Tree

Root/include/rmsdk/dpdrm.h

Source at commit 1f582f55f35b3a6898ced8d388e043ee81168bd1 created 4 months 21 days ago.
By Grégory Soutadé, First clean working version
1/*
2 File automatically generated by SOAdvancedDissector.py
3 More information at http://indefero.soutade.fr/p/soadvanceddissector
4*/
5
6#ifndef _DPDRM_H
7#define _DPDRM_H
8
9#include <dp.h>
10#include <dpio.h>
11#include <dpdev.h>
12
13namespace adept {
14 class FulfillmentItemList;
15}
16
17namespace dpdrm {
18
19 class Activation;
20 class DRMProcessor;
21 class DRMProcessorClient;
22 class DRMProvider;
23 class FulfillmentItem;
24 class License;
25 class Permission;
26 class Rights;
27
28
29 class Activation: public dp::RefCounted
30 {
31 public:
32 Activation();
33
34 virtual ~Activation();
35 virtual void* getInterfaceID();
36 virtual void addRef() = 0;
37 virtual void release() = 0;
38 virtual void getUserID() = 0;
39 virtual void getDeviceID() = 0;
40 virtual void getExpiration() = 0;
41 virtual void getAuthority() = 0;
42 virtual void getUsername() = 0;
43 virtual void hasCredentials() = 0;
44
45 };
46
47 class DRMProcessor: public dp::Releasable
48 {
49 public:
50 DRMProcessor();
51
52 virtual ~DRMProcessor();
53 virtual void* getInterfaceID();
54 virtual void release() = 0;
55 virtual void getActivations() = 0;
56 virtual void setUser(dp::String const&) = 0;
57 virtual void setPartition(dpio::Partition*) = 0;
58 virtual void reset() = 0;
59 virtual void initWorkflows(unsigned int, dp::Data const&) = 0;
60 virtual void initSignInWorkflow(unsigned int, dp::String const&, dp::String const&, dp::String const&) = 0;
61 virtual void initSignInWorkflow(unsigned int, dp::String const&, dp::String const&, dp::Data const&) = 0;
62 virtual void initLoanReturnWorkflow(dp::String const&) = 0;
63 virtual void initUpdateLoansWorkflow(dp::String const&, dp::String const&) = 0;
64 virtual void initJoinAccountsWorkflow(dp::String const&, dp::String const&, dp::String const&) = 0;
65 virtual int startWorkflows(unsigned int) = 0;
66 virtual void providePasshash(dp::Data const&) = 0;
67 virtual void provideInput(dp::Data const&) = 0;
68 virtual void provideConfirmation(dp::String const&, int) = 0;
69 virtual void transferLoanTokensFrom(dpdev::Device*) = 0;
70 virtual void transferCredentialsFrom(dpdev::Device*, dp::String const&, bool) = 0;
71 virtual dp::list<dpdrm::FulfillmentItem> getFulfillmentItems() = 0;
72 virtual void getFulfillmentID() = 0;
73 virtual void isReturnable() = 0;
74 virtual void addPasshash(dp::String const&, dp::Data const&) = 0;
75 virtual void removePasshash(dp::String const&, dp::Data const&) = 0;
76 virtual void calculatePasshash(dp::String const&, dp::String const&) = 0;
77
78 };
79
80 class DRMProcessorClient
81 {
82 public:
83 };
84
85 class DRMProvider: public dp::Unknown
86 {
87 public:
88 DRMProvider();
89
90 virtual ~DRMProvider();
91 virtual void* getInterfaceID();
92 virtual dpdrm::DRMProcessor* createDRMProcessor(dpdrm::DRMProcessorClient*, dpdev::Device*) = 0;
93 virtual void parseLicense(dp::Data const&) = 0;
94
95 void getProvider();
96
97 };
98
99 class FulfillmentItem: public dp::RefCounted
100 {
101 public:
102 FulfillmentItem();
103
104 virtual ~FulfillmentItem();
105 virtual void* getInterfaceID();
106 virtual void addRef() = 0;
107 virtual void release() = 0;
108 virtual dp::String getRights() = 0;
109 virtual dp::String getMetadata(dp::String const&) = 0;
110 virtual dp::String getDownloadMethod() = 0;
111 virtual dp::String getDownloadURL() = 0;
112 virtual dp::Data getPostData() = 0;
113
114 };
115
116 class License: public dp::RefCounted
117 {
118 public:
119 License();
120
121 virtual ~License();
122 virtual void* getInterfaceID();
123 virtual void addRef() = 0;
124 virtual void release() = 0;
125 virtual void getUserID() = 0;
126 virtual void getResourceID() = 0;
127 virtual void getVoucherID() = 0;
128 virtual void getLicenseURL() = 0;
129 virtual void getOperatorURL() = 0;
130 virtual void getFulfillmentID() = 0;
131 virtual void getDistributorID() = 0;
132 virtual void getLicensee() = 0;
133 virtual void getPermissions(dp::String const&) = 0;
134 virtual void getCurrentCount(dp::String const&) = 0;
135 virtual void consume(dp::String const&, int) = 0;
136 virtual void getFlavor() = 0;
137
138 };
139
140 class Permission: public dp::RefCounted
141 {
142 public:
143 Permission();
144
145 virtual ~Permission();
146 virtual void* getInterfaceID();
147 virtual void addRef() = 0;
148 virtual void release() = 0;
149 virtual void getPermissionType() = 0;
150 virtual void getExpiration() = 0;
151 virtual void getLoanID() = 0;
152 virtual void getDeviceID() = 0;
153 virtual void getDeviceType() = 0;
154 virtual void getMaxResoultion() = 0;
155 virtual void getParts() = 0;
156 virtual void isConsumable() = 0;
157 virtual void getInitialCount() = 0;
158 virtual void getMaxCount() = 0;
159 virtual void getIncrementInterval() = 0;
160
161 };
162
163 class Rights: public dp::RefCounted
164 {
165 public:
166 Rights();
167
168 virtual ~Rights();
169 virtual void* getInterfaceID();
170 virtual void addRef() = 0;
171 virtual void release() = 0;
172 virtual void getLicenses() = 0;
173 virtual void getValidLicenses(dpdev::Device*) = 0;
174 virtual void serialize() = 0;
175
176 };
177
178
179 // void getAuthenticationCertificate(dp::ref<dpdrm::Activation>);
180 // void getUserCertificate(dp::ref<dpdrm::Activation>);
181 void signChallenge(dp::String const&, dp::String const&);
182
183}
184
185
186
187#endif // _DPDRM_H

Archive Download this file

Branches