/* File automatically generated by SOAdvancedDissector.py More information at http://indefero.soutade.fr/p/soadvanceddissector */ #ifndef _DPDRM_H #define _DPDRM_H #include #include #include namespace adept { class FulfillmentItemList; class ActivationImpl; } namespace dpdrm { class Activation; class DRMProcessor; class DRMProcessorClient; class DRMProvider; class FulfillmentItem; class License; class Permission; class Rights; class Activation: public dp::RefCounted { public: Activation(); virtual ~Activation(); virtual void* getInterfaceID(); virtual void addRef() = 0; virtual void release() = 0; virtual uft::String getUserID() = 0; virtual uft::String getDeviceID() = 0; virtual void getExpiration() = 0; virtual void getAuthority() = 0; virtual void getUsername() = 0; virtual bool hasCredentials() = 0; }; class DRMProcessor: public dp::Releasable { public: DRMProcessor(); virtual ~DRMProcessor(); virtual void* getInterfaceID(); virtual void release() = 0; virtual dp::list getActivations() = 0; virtual void setUser(dp::String const&) = 0; virtual void setPartition(dpio::Partition*) = 0; virtual void reset() = 0; virtual void initWorkflows(unsigned int, dp::Data const&) = 0; virtual void initSignInWorkflow(unsigned int, dp::String const&, dp::String const&, dp::String const&) = 0; virtual void initSignInWorkflow(unsigned int, dp::String const&, dp::String const&, dp::Data const&) = 0; virtual void initLoanReturnWorkflow(dp::String const&) = 0; virtual void initUpdateLoansWorkflow(dp::String const&, dp::String const&) = 0; virtual void initJoinAccountsWorkflow(dp::String const&, dp::String const&, dp::String const&) = 0; virtual int startWorkflows(unsigned int) = 0; virtual void providePasshash(dp::Data const&) = 0; virtual void provideInput(dp::Data const&) = 0; virtual void provideConfirmation(dp::String const&, int) = 0; virtual void transferLoanTokensFrom(dpdev::Device*) = 0; virtual void transferCredentialsFrom(dpdev::Device*, dp::String const&, bool) = 0; virtual dp::list getFulfillmentItems() = 0; virtual void getFulfillmentID() = 0; virtual void isReturnable() = 0; virtual void addPasshash(dp::String const&, dp::Data const&) = 0; virtual void removePasshash(dp::String const&, dp::Data const&) = 0; virtual void calculatePasshash(dp::String const&, dp::String const&) = 0; }; class DRMProcessorClient { public: }; class DRMProvider: public dp::Unknown { public: DRMProvider(); virtual ~DRMProvider(); virtual void* getInterfaceID(); virtual dpdrm::DRMProcessor* createDRMProcessor(dpdrm::DRMProcessorClient*, dpdev::Device*) = 0; virtual void parseLicense(dp::Data const&) = 0; void getProvider(); }; class FulfillmentItem: public dp::RefCounted { public: FulfillmentItem(); virtual ~FulfillmentItem(); virtual void* getInterfaceID(); virtual void addRef() = 0; virtual void release() = 0; virtual dp::ref getRights() = 0; virtual dp::String getMetadata(dp::String const&) = 0; virtual dp::String getDownloadMethod() = 0; virtual dp::String getDownloadURL() = 0; virtual dp::Data getPostData() = 0; }; class License: public dp::RefCounted { public: License(); virtual ~License(); virtual void* getInterfaceID(); virtual void addRef() = 0; virtual void release() = 0; virtual void getUserID() = 0; virtual void getResourceID() = 0; virtual dp::String getVoucherID() = 0; virtual void getLicenseURL() = 0; virtual void getOperatorURL() = 0; virtual void getFulfillmentID() = 0; virtual void getDistributorID() = 0; virtual void getLicensee() = 0; virtual void getPermissions(dp::String const&) = 0; virtual void getCurrentCount(dp::String const&) = 0; virtual void consume(dp::String const&, int) = 0; virtual void getFlavor() = 0; }; class Permission: public dp::RefCounted { public: Permission(); virtual ~Permission(); virtual void* getInterfaceID(); virtual void addRef() = 0; virtual void release() = 0; virtual void getPermissionType() = 0; virtual void getExpiration() = 0; virtual void getLoanID() = 0; virtual void getDeviceID() = 0; virtual void getDeviceType() = 0; virtual void getMaxResoultion() = 0; virtual void getParts() = 0; virtual void isConsumable() = 0; virtual void getInitialCount() = 0; virtual void getMaxCount() = 0; virtual void getIncrementInterval() = 0; }; class Rights: public dp::RefCounted { public: Rights(); virtual ~Rights(); virtual void* getInterfaceID(); virtual void addRef() = 0; virtual void release() = 0; virtual dp::list getLicenses() = 0; virtual void getValidLicenses(dpdev::Device*) = 0; virtual dp::Data serialize() = 0; }; void getAuthenticationCertificate(dp::ref); void getUserCertificate(dp::ref); void signChallenge(dp::String const&, dp::String const&); } #endif // _DPDRM_H