309 lines
11 KiB
C++
309 lines
11 KiB
C++
/*
|
|
File automatically generated by SOAdvancedDissector.py
|
|
More information at http://indefero.soutade.fr/p/soadvanceddissector
|
|
*/
|
|
|
|
#ifndef _LIBRMSDK_H
|
|
#define _LIBRMSDK_H
|
|
|
|
// #include <xpath.h>
|
|
#include <mdom.h>
|
|
#include <uft.h>
|
|
//#include <mrend.h>
|
|
//#include <cssparser.h>
|
|
//#include <tahoecss.h>
|
|
//#include <xda.h>
|
|
#include <adept.h>
|
|
|
|
#define WORKFLOW_AUTH_SIGN_IN 0x2
|
|
#define WORKFLOW_ADD_SIGN_IN 0x4
|
|
#define WORKFLOW_ACTIVATION 0x10
|
|
#define WORKFLOW_FULFILLMENT 0x20
|
|
#define WORKFLOW_LOAN_RETURN 0x80
|
|
#define WORKFLOW_UPDATE_LOAN 0x100
|
|
#define WORKFLOW_DOWNLOAD 0x200
|
|
#define WORKFLOW_JOIN_ACCOUNTS 0x400
|
|
#define WORKFLOW_GET_CREDENTIAL_LIST 0x800
|
|
#define WORKFLOW_NOTIFICATION 0x1000
|
|
|
|
namespace rmsdk {
|
|
|
|
adept::DRMProviderImpl* getProvider();
|
|
|
|
}
|
|
|
|
class MetroWisDOM: public mdom::DOM, public mdom::DataSink
|
|
{
|
|
public:
|
|
MetroWisDOM(MetroWisDOM&);
|
|
MetroWisDOM(MetroWisDOM&, bool);
|
|
MetroWisDOM(uft::ErrorHandler*, int);
|
|
|
|
virtual ~MetroWisDOM();
|
|
virtual void getDOMId();
|
|
virtual void getDOMCaps();
|
|
virtual void query(uft::Value const&, void*);
|
|
virtual void setElementConfigs(mdom::Node const&, mdom::ElementConfig const*, unsigned int);
|
|
virtual void setPreParser(uft::ValueParser*);
|
|
virtual mdom::Node getRoot();
|
|
virtual void getResource(uft::URL const&);
|
|
virtual void attachDOMListener(unsigned int, mdom::DOMListener*);
|
|
virtual void clearChanges();
|
|
virtual void cloneConfig();
|
|
virtual void setDOMHost(mdom::DOMHost*);
|
|
virtual void setMasterURL(uft::URL const&);
|
|
virtual void writeData(uft::URL const&, unsigned char const*, unsigned int, mdom::ParseException*, mdom::ExternalEntityResolver*);
|
|
virtual void xformsProcessorHalted();
|
|
virtual void xformsFatalError(uft::String);
|
|
|
|
};
|
|
|
|
class WisDOMTraversal;
|
|
class WisDOMTree;
|
|
class WDLinkSnapshot{};
|
|
class WDIdAttrValue{};
|
|
class WisDOM_NodeTypes{};
|
|
class WDNodeReference;
|
|
class WDNodeClass;
|
|
|
|
class WDLinkAttrValue
|
|
{
|
|
public:
|
|
WDLinkAttrValue(uft::sref<mdom::AttrConfig> const&, uft::Value const&, WisDOMTraversal*, int, WisDOMTraversal*, int);
|
|
|
|
void query(uft::Value const&, void*);
|
|
void staticInit();
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class WDNodeParserContext: public uft::ParserContext
|
|
{
|
|
public:
|
|
WDNodeParserContext(mdom::Node const&, unsigned int);
|
|
|
|
virtual void resolveNSPrefix(uft::String const&);
|
|
virtual void prefixBindingsChanged();
|
|
virtual void getNodeType();
|
|
|
|
};
|
|
|
|
class WDSelectorLink
|
|
{
|
|
public:
|
|
WDSelectorLink(uft::Value const&, xpath::Expression const&, mdom::Node&, uft::sref<mdom::AttrConfig> const&);
|
|
|
|
void staticInit();
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class WDStringHash
|
|
{
|
|
public:
|
|
WDStringHash(WDStringHash&);
|
|
WDStringHash(WisDOMTree*, unsigned long);
|
|
|
|
virtual ~WDStringHash();
|
|
|
|
void get(unsigned long) const;
|
|
void hash(char const*, unsigned long);
|
|
void lookup(char const*, unsigned long*, unsigned long) const;
|
|
void minimizeHash(int*);
|
|
void put(char const*);
|
|
|
|
};
|
|
|
|
class WisDOMMemory
|
|
{
|
|
public:
|
|
WisDOMMemory();
|
|
|
|
~WisDOMMemory();
|
|
|
|
void Alloc(unsigned int);
|
|
void Free(void*);
|
|
void Realloc(void*, unsigned int);
|
|
void appendCommentChars(char*, int, int);
|
|
void appendDataChars(char*, int, int, bool);
|
|
void getCommentStringBuffer(int);
|
|
void getDataStringBuffer(int);
|
|
void trimCommentChars();
|
|
void trimDataChars();
|
|
|
|
};
|
|
|
|
class WisDOMTraversal: public mdom::Traversal
|
|
{
|
|
public:
|
|
WisDOMTraversal(MetroWisDOM*, WisDOMTraversal const&);
|
|
WisDOMTraversal(MetroWisDOM*, uft::URL const&);
|
|
WisDOMTraversal(WisDOMTraversal const&, WisDOMTree*);
|
|
|
|
virtual void incRef(mdom::NodeData*);
|
|
virtual void decRef(mdom::NodeData*);
|
|
virtual void getDOM();
|
|
virtual void owner(mdom::Node*);
|
|
virtual void parent(mdom::Node*);
|
|
virtual void child(mdom::Node*, int, bool);
|
|
virtual void sibling(mdom::Node*, int, bool);
|
|
virtual void childCount(mdom::Node const*, bool);
|
|
virtual void nextLink(mdom::Node const*, unsigned int, unsigned int, mdom::Node*, uft::Value const**);
|
|
virtual void finishLinkIteration(mdom::Node const*, unsigned int, unsigned int);
|
|
virtual void create(mdom::Node*, int, uft::Value const&);
|
|
virtual void clone(mdom::Node*, bool);
|
|
virtual void insertBefore(mdom::Node const*, mdom::Node const*, mdom::Node const*);
|
|
virtual void remove(mdom::Node const*);
|
|
virtual void getNodeType(mdom::Node const*);
|
|
virtual uft::String getNodeName(mdom::Node const*);
|
|
virtual uft::Value getNodeValue(mdom::Node const*, unsigned int, unsigned int);
|
|
virtual void changeNodeValue(mdom::Node const*, unsigned int, unsigned int, uft::Value const&);
|
|
virtual void resolvePrefix(mdom::Node const*, uft::String const&);
|
|
virtual void getBaseURL(mdom::Node const*);
|
|
virtual void nextAttribute(mdom::Node const*, unsigned int, unsigned int, uft::Value const**, uft::Value const**);
|
|
virtual void finishAttributeIteration(mdom::Node const*, unsigned int, unsigned int);
|
|
virtual void getAttribute(mdom::Node const*, uft::Value const&);
|
|
virtual void setAttribute(mdom::Node const*, uft::Value const&, uft::Value const&);
|
|
virtual void compareNodes(mdom::Node const*, mdom::Node const*);
|
|
virtual void evaluate(xpath::Expression const&, mdom::Node const*, xpath::Context*, xpath::ResultType);
|
|
virtual void iterate(xpath::Expression const&, xpath::Context*, mdom::Node*);
|
|
virtual void finishIteration(xpath::Expression const&, xpath::Context*);
|
|
virtual void getChangeFlags(mdom::Node const*);
|
|
virtual void invalidate(mdom::Node const*, unsigned int);
|
|
virtual void iterateChangedAttributes(mdom::Node const*, unsigned int, uft::Value*, uft::Value*);
|
|
virtual void finishChangedAttributeIteration(mdom::Node const*, unsigned int);
|
|
virtual void iterateNodeValueChanges(mdom::Node const*, unsigned int, mdom::TextChangeRecord*);
|
|
virtual void finishNodeValueChangeIteration(mdom::Node const*, unsigned int);
|
|
virtual void iterateRemovedChildren(mdom::Node const*, unsigned int, mdom::RemovedChildRecord*);
|
|
virtual void finishRemovedChildIteration(mdom::Node const*, unsigned int);
|
|
virtual void getAttachment(mdom::Node const*, uft::Value const&);
|
|
virtual void setAttachment(mdom::Node const*, uft::Value const&, uft::Value const&);
|
|
virtual void getAttachment(uft::Value const&);
|
|
virtual void setAttachment(uft::Value const&, uft::Value const&);
|
|
virtual void getReference(mdom::Node const*, bool);
|
|
virtual void destroy();
|
|
virtual ~WisDOMTraversal();
|
|
virtual void nextNamespaceDecl(mdom::Node const*, unsigned int, unsigned int, uft::Value const**);
|
|
virtual void finishNamespaceIteration(mdom::Node const*, unsigned int, unsigned int);
|
|
|
|
void addRulesToList(mdom::Node const*, uft::Vector const&, uft::Value const&);
|
|
void afterInsertion(int);
|
|
void afterRemoval(int);
|
|
void afterShadowInsertion(int, uft::Dict&);
|
|
void allocLinkSnap();
|
|
void beforeInsertion(int, uft::Dict&);
|
|
void beforeRemoval(int, uft::Dict&);
|
|
void cacheChangedAttribute(int, uft::Value const&, uft::Value const&);
|
|
void cacheChangedValue(int, uft::Value const&);
|
|
void characterData(char const*, int);
|
|
void clearChangeCaches();
|
|
void clearChanges();
|
|
void cloneChildren(int, int, int, int);
|
|
void cloneNode(int);
|
|
void comment(char const*, bool);
|
|
void createElementWithQName(uft::QName const&, char const**, bool);
|
|
void createSelectorLink(mdom::Node*, mdom::Reference, uft::Value const&);
|
|
void createTextNode(bool);
|
|
void deleteLinkSnap(WDLinkSnapshot*);
|
|
void detachChildren(int, int, int);
|
|
void detachNode(int);
|
|
void docTypeName(char const*);
|
|
void docTypePublicID(char const*);
|
|
void docTypeSystemID(char const*);
|
|
void endCDATASection();
|
|
void endElement(char const*);
|
|
void endNamespace(char const*);
|
|
void ensureNSStackCapacity();
|
|
void filterAndAddRulesToList(mdom::Node const*, uft::Vector const&, uft::Value const&);
|
|
void findDOMInsertIndex(int, int, int);
|
|
void findFragInsertIndex(int, int, int, int*, int*, int*);
|
|
void findLinkAttr(xpath::Expression const&, int, uft::sref<WDLinkAttrValue> const&);
|
|
void findUnattachedNodeIdx(int, int*, int*);
|
|
void getAttributeByName(int, uft::Value const&);
|
|
void getAttributeConfig(int, uft::Value const&);
|
|
void getBranchRoot(int);
|
|
void getChangedValue(int, unsigned int);
|
|
void getDOMTree();
|
|
void getIdAttr(int);
|
|
void getIdAttrFromMap(int, uft::String const&);
|
|
void getIdMap();
|
|
void getLinkCache(int);
|
|
void getLocalizedIdMap(int);
|
|
void getNode(WDNodeReference*);
|
|
void getRoot();
|
|
void getSelectorLink(int);
|
|
void initDocumentModel(bool);
|
|
void internalEntity(char const*, char const*, int);
|
|
void newAttribute(int, uft::Value const&, uft::Value const&);
|
|
void parsedAttribute(int, WDNodeClass*, uft::Value const&, uft::Value const&);
|
|
void processSimpleMatch(xpath::SimpleMatch const&, uft::Value const&, bool);
|
|
void processingInstruction(char const*, char const*, bool);
|
|
void reconfigureAttribute(mdom::Node*, int, int, uft::QName const&, WDNodeClass*, bool);
|
|
void reconfigureElement(mdom::Node*, int, WDNodeClass*, bool);
|
|
void registerId(uft::Dict&, uft::sref<WDIdAttrValue> const&);
|
|
void registerLink(int, uft::sref<WDLinkAttrValue> const&);
|
|
void remapFromDocIndex(int);
|
|
void removeAttribute(int, int);
|
|
void removeSelectorLink(mdom::Node*, mdom::Reference, uft::Value const&);
|
|
void resolvePrefixLocal(int, uft::String const&);
|
|
void setDirtyBits(int, unsigned int);
|
|
void startCDATASection();
|
|
void startElement(char const*, char const**, bool);
|
|
void startNamespace(char const*, char const*);
|
|
void staticInit();
|
|
void unregisterId(uft::Dict&, uft::sref<WDIdAttrValue> const&);
|
|
void unregisterLink(int, uft::sref<WDLinkAttrValue> const&);
|
|
void updateSelectorLinks();
|
|
void writeData(unsigned char const*, unsigned int, mdom::ParseException*, mdom::ExternalEntityResolver*);
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class WisDOMTree
|
|
{
|
|
public:
|
|
WisDOMTree(WisDOMTraversal*, int);
|
|
WisDOMTree(WisDOMTree&);
|
|
WisDOMTree(int);
|
|
|
|
~WisDOMTree();
|
|
|
|
void addAttribute(int, uft::Value const&, uft::Value const&);
|
|
void addDynamicAttribute(int, uft::Value const&, uft::Value const&, int);
|
|
void addNamespace(int, uft::Value const&);
|
|
void addNode(WisDOM_NodeTypes, int, int, int, uft::Value const&, bool);
|
|
void appendHashKey(char const*, int, int);
|
|
void cacheUnattachedNode(int);
|
|
void clearChanges();
|
|
void closeElements(_IO_FILE*, int);
|
|
void copyAttribute(int, uft::Value, uft::Value);
|
|
void copyNode(int);
|
|
void ensureAttributeCapacity();
|
|
void ensureDynamicAttributeCapacity();
|
|
void ensureNamespaceCapacity();
|
|
void ensureNodeCapacity();
|
|
void ensurePriorIndex();
|
|
void freePriorIndex();
|
|
void getRoot();
|
|
void initDocumentModel(bool);
|
|
void insertUnattachedNode(int, int, int);
|
|
void isUsingNamespaces();
|
|
void makePriorIndex();
|
|
void makeSerialIndex();
|
|
void serializeAttribute(_IO_FILE*, uft::Value, uft::Value);
|
|
void serializeComment(_IO_FILE*, int);
|
|
void serializeDOM(_IO_FILE*);
|
|
void serializeElement(_IO_FILE*, int);
|
|
void serializeNamespace(_IO_FILE*, int);
|
|
void serializePI(_IO_FILE*, int);
|
|
void serializeText(_IO_FILE*, int);
|
|
void setTraversal(WisDOMTraversal*);
|
|
void writeData(unsigned char const*, unsigned int, mdom::ParseException*, mdom::ExternalEntityResolver*);
|
|
|
|
};
|
|
|
|
#endif // _LIBRMSDK_H
|