亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? platformutils.hpp

?? IBM的解析xml的工具Xerces的源代碼
?? HPP
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
      * use local file services to open the passed file. If it fails, a      * null handle pointer should be returned.      *      * @param fileName The string containing the name of the file      * @param manager The MemoryManager to use to allocate objects      * @return The file handle of the opened file      */    static FileHandle openFileToWrite(const XMLCh* const fileName        , MemoryManager* const manager  = XMLPlatformUtils::fgMemoryManager);    /** Opens the standard input as a file      *      * This must be implemented by the per-platform driver, which should      * use local file services to open a handle to the standard input.      * It should be a copy of the standard input handle, since it will      * be closed later!      *      * @param manager The MemoryManager to use to allocate objects      * @return The file handle of the standard input stream      */    static FileHandle openStdInHandle(MemoryManager* const manager  = XMLPlatformUtils::fgMemoryManager);    /** Reads the file buffer      *      * This must be implemented by the per-platform driver, which should      * use local file services to read up to 'toRead' bytes of data from      * the passed file, and return those bytes in the 'toFill' buffer. It      * is not an error not to read the requested number of bytes. When the      * end of file is reached, zero should be returned.      *      * @param theFile The file handle to be read from.      * @param toRead The maximum number of byte to read from the current      * position      * @param toFill The byte buffer to fill      * @param manager The MemoryManager to use to allocate objects      *      * @return Returns the number of bytes read from the stream or file      */    static unsigned int readFileBuffer    (                FileHandle      theFile        , const unsigned int    toRead        ,       XMLByte* const  toFill        , MemoryManager* const manager  = XMLPlatformUtils::fgMemoryManager    );    /** Writes the buffer to the file      *      * This must be implemented by the per-platform driver, which should      * use local file services to write up to 'toWrite' bytes of data to      * the passed file. Unless exception raised by local file services,      * 'toWrite' bytes of data is to be written to the passed file.      *      * @param theFile The file handle to be written to.      * @param toWrite The maximum number of byte to write from the current      * position      * @param toFlush The byte buffer to flush      * @param manager The MemoryManager to use to allocate objects      * @return void      */    static void writeBufferToFile    (          FileHandle     const  theFile        , long                  toWrite        , const XMLByte* const  toFlush        , MemoryManager* const manager  = XMLPlatformUtils::fgMemoryManager    );    /** Resets the file handle      *      * This must be implemented by the per-platform driver which will use      * local file services to reset the file position to the start of the      * the file.      *      * @param theFile The file handle that you want to reset      * @param manager The MemoryManager to use to allocate objects      */    static void resetFile(FileHandle theFile        , MemoryManager* const manager  = XMLPlatformUtils::fgMemoryManager);    //@}    /** @name File System Methods */    //@{    /** Gets the full path from a relative path      *      * This must be implemented by the per-platform driver. It should      * complete a relative path using the 'current directory', or whatever      * the local equivalent of a current directory is. If the passed      * source path is actually fully qualified, then a straight copy of it      * will be returned.      *      * @param srcPath The path of the file for which you want the full path      *      * @param manager Pointer to the memory manager to be used to      *                allocate objects.      *      * @return Returns the fully qualified path of the file name including      *         the file name. This is dyanmically allocated and must be      *         deleted  by the caller when its no longer needed! The memory      *         returned will beallocated using the static memory manager, if      *         user do not supply a memory manager. Users then need to make      *         sure to use either the default or user specific memory manager      *         to deallocate the memory.      */    static XMLCh* getFullPath    (        const XMLCh* const srcPath        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager    );    /** Gets the current working directory       *      * This must be implemented by the per-platform driver. It returns       * the current working directory is.       * @param manager The MemoryManager to use to allocate objects      * @return Returns the current working directory.       *         This is dyanmically allocated and must be deleted      *         by the caller when its no longer needed! The memory returned      *         will be allocated using the static memory manager, if users      *         do not supply a memory manager. Users then need to make sure      *         to use either the default or user specific memory manager to      *         deallocate the memory.      */    static XMLCh* getCurrentDirectory    (        MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager    );    /** Check if a charater is a slash      *      * This must be implemented by the per-platform driver.       *      * @param c the character to be examined      *      * @return true  if the character examined is a slash      *         false otherwise      */    static inline bool isAnySlash(XMLCh c);        /** Remove occurences of the pair of dot slash       *      * To remove the sequence, dot slash if it is part of the sequence,      * slash dot slash.      *      * @param srcPath The path for which you want to remove the dot slash sequence.      * @param manager The MemoryManager to use to allocate objects      * @return       */    static void   removeDotSlash(XMLCh* const srcPath        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager);    /** Remove occurences of the dot dot slash       *      * To remove the sequence, slash dot dot slash and its preceding path segment      * if and only if the preceding path segment is not slash dot dot slash.      *      * @param srcPath The path for which you want to remove the slash dot      *        dot slash sequence and its preceding path segment.      * @param manager The MemoryManager to use to allocate objects      * @return       */    static void   removeDotDotSlash(XMLCh* const srcPath        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager);    /** Determines if a path is relative or absolute      *      * This must be implemented by the per-platform driver, which should      * determine whether the passed path is relative or not. The concept      * of relative and absolute might be... well relative on different      * platforms. But, as long as the determination is made consistently      * and in coordination with the weavePaths() method, it should work      * for any platform.      *      * @param toCheck The file name which you want to check      * @param manager The MemoryManager to use to allocate objects      * @return Returns true if the filename appears to be relative      */    static bool isRelative(const XMLCh* const toCheck        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager        );    /** Utility to join two paths      *      * This must be implemented by the per-platform driver, and should      * weave the relative path part together with the base part and return      * a new path that represents this combination.      *      * If the relative part turns out to be fully qualified, it will be      * returned as is. If it is not, then it will be woven onto the      * passed base path, by removing one path component for each leading      * "../" (or whatever is the equivalent in the local system) in the      * relative path.      *      * @param basePath The string containing the base path      * @param relativePath The string containing the relative path      * @param manager The MemoryManager to use to allocate objects      * @return Returns a string containing the 'woven' path. It should      * be dynamically allocated and becomes the responsibility of the      * caller to delete.      */    static XMLCh* weavePaths    (        const   XMLCh* const    basePath        , const XMLCh* const    relativePath        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager    );    //@}    /** @name Timing Methods */    //@{    /** Gets the system time in milliseconds      *      * This must be implemented by the per-platform driver, which should      * use local services to return the current value of a running      * millisecond timer. Note that the value returned is only as accurate      * as the millisecond time of the underyling host system.      *      * @return Returns the system time as an unsigned long      */    static unsigned long getCurrentMillis();    //@}    /** @name Mutex Methods */    //@{    /** Closes a mutex handle      *      * Each per-platform driver must implement this. Only it knows what      * the actual content of the passed mutex handle is.      *      * @param mtxHandle The mutex handle that you want to close      */    static void closeMutex(void* const mtxHandle);    /** Locks a mutex handle      *      * Each per-platform driver must implement this. Only it knows what      * the actual content of the passed mutex handle is.      *      * @param mtxHandle The mutex handle that you want to lock      */    static void lockMutex(void* const mtxHandle);    /** Make a new mutex      *      * Each per-platform driver must implement this. Only it knows what      * the actual content of the passed mutex handle is. The returned      * handle pointer will be eventually passed to closeMutex() which is      * also implemented by the platform driver.      */    static void* makeMutex();    /** Unlocks a mutex      *      * Each per-platform driver must implement this. Only it knows what      * the actual content of the passed mutex handle is.      *      * Note that, since the underlying system synchronization services      * are used, Xerces cannot guarantee that lock/unlock operations are      * correctly enforced on a per-thread basis or that incorrect nesting      * of lock/unlock operations will be caught.      *      * @param mtxHandle The mutex handle that you want to unlock      */    static void unlockMutex(void* const mtxHandle);    //@}    /** @name External Message Support */    //@{    /** Loads the message set from among the available domains      *      * The returned object must be dynamically allocated and the caller      * becomes responsible for cleaning it up.      *      * @param msgDomain The message domain which you want to load      */    static XMLMsgLoader* loadMsgSet(const XMLCh* const msgDomain);    //@}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品www牛牛影视| 波多野结衣欧美| 欧美日韩免费一区二区三区视频| 亚洲人成人一区二区在线观看| 成人a级免费电影| 亚洲丝袜制服诱惑| 91久久免费观看| 日韩和欧美一区二区三区| 91精品国产一区二区| 久久国产乱子精品免费女| 久久先锋影音av鲁色资源网| 成人国产视频在线观看| 久久精品国产精品亚洲红杏| 亚洲综合视频在线| 日韩视频免费观看高清完整版 | 免费精品99久久国产综合精品| 国产成人av电影在线| 欧美日韩在线三区| 国产成人8x视频一区二区| 久久精品国产成人一区二区三区| 亚洲黄色尤物视频| 欧美一区二区三区不卡| 色av成人天堂桃色av| 91蜜桃免费观看视频| 日韩国产高清在线| 国产午夜精品福利| 欧美午夜免费电影| 国产久卡久卡久卡久卡视频精品| 日韩理论片一区二区| 国产欧美精品在线观看| 欧美日韩一卡二卡三卡| 色域天天综合网| 国产精品一区三区| 狠狠色综合日日| 亚洲成人av福利| 国产亚洲精久久久久久| 日韩精品一区二区三区在线 | 91精品国产综合久久精品麻豆 | 欧美日韩成人高清| 国产精品2024| 国产高清视频一区| 国产成人免费9x9x人网站视频| 久久精品国产99久久6| 久久国产生活片100| 麻豆91免费观看| 亚洲国产精品久久不卡毛片| 中文字幕不卡的av| 日韩久久久精品| 欧美一级黄色大片| 精品国产乱码久久久久久影片| 色av成人天堂桃色av| 欧美色倩网站大全免费| 91精品中文字幕一区二区三区| 91精品国产综合久久久久久| 日韩免费成人网| 中文字幕 久热精品 视频在线| 中文一区在线播放| 樱桃视频在线观看一区| 亚洲成国产人片在线观看| 青青草国产成人99久久| 国产精品自拍在线| 99国产一区二区三精品乱码| 国产精品原创巨作av| 白白色亚洲国产精品| 99麻豆久久久国产精品免费| 欧美视频在线观看一区二区| 91精品国产一区二区人妖| 久久久久久久综合色一本| 久久一夜天堂av一区二区三区| 国产农村妇女毛片精品久久麻豆| 亚洲免费在线电影| 日韩电影一区二区三区四区| 极品少妇一区二区| 九九**精品视频免费播放| 国产宾馆实践打屁股91| 欧美在线小视频| 在线观看中文字幕不卡| 日韩精品一区在线| 亚洲精品成人天堂一二三| 日韩高清一级片| 成人性色生活片| 成人精品一区二区三区中文字幕 | 成人av在线一区二区三区| 欧洲国内综合视频| 久久久久99精品国产片| 亚洲精品欧美激情| 国产自产v一区二区三区c| 色综合久久中文字幕| 精品国产乱码91久久久久久网站| 国产精品久久久久影视| 国产精品久久久久久久久免费桃花 | 亚洲一区二区三区美女| 国产伦精品一区二区三区免费迷| 国产一区二区精品久久| 欧美日韩免费在线视频| 国产精品日日摸夜夜摸av| 国产精品久久久久7777按摩| 日韩专区中文字幕一区二区| 91在线视频官网| 26uuu国产日韩综合| 亚洲午夜在线视频| 99麻豆久久久国产精品免费 | 欧美精品一区二区三区四区| 亚洲精品视频一区| 成人h版在线观看| 精品免费一区二区三区| 日本一区免费视频| 免费成人结看片| 欧日韩精品视频| 中文字幕亚洲不卡| 午夜精品免费在线| 久久99精品久久久久久国产越南 | 首页综合国产亚洲丝袜| 97精品国产97久久久久久久久久久久 | 99久久综合色| 国产精品三级电影| 国产精品一卡二卡| 欧美成人bangbros| 日韩国产欧美在线播放| 欧美日韩国产另类一区| 亚洲精选视频在线| 成人高清免费观看| 国产精品美女久久久久高潮| 国产一区二区三区四区五区入口| 宅男噜噜噜66一区二区66| 性久久久久久久久| 欧美日韩和欧美的一区二区| 一区二区三区四区视频精品免费| 青青草伊人久久| 666欧美在线视频| 青草av.久久免费一区| 欧美日韩一区二区三区四区五区| 亚洲一二三区视频在线观看| 欧美三级乱人伦电影| 亚洲伊人色欲综合网| 色网综合在线观看| 有坂深雪av一区二区精品| 在线亚洲一区二区| 亚洲国产欧美日韩另类综合| 欧美人妇做爰xxxⅹ性高电影| 亚洲一区二区三区激情| 欧美亚洲精品一区| 婷婷开心激情综合| 日韩一区二区不卡| 久久精品国产秦先生| 久久女同精品一区二区| 国产成人自拍在线| 国产精品国产三级国产普通话三级 | 久久精品国产99国产| 久久精品一区二区三区四区| 大白屁股一区二区视频| 图片区小说区区亚洲影院| 韩国欧美国产一区| 久久奇米777| 成人av资源在线观看| 中文字幕一区三区| 在线视频综合导航| 日韩精品福利网| 久久精品亚洲国产奇米99| www.亚洲免费av| 亚洲综合色自拍一区| 日韩欧美中文一区二区| 国产精品一区二区x88av| 亚洲天堂福利av| 制服丝袜激情欧洲亚洲| 国产一区二区视频在线| 亚洲欧洲另类国产综合| 欧美日韩一区二区电影| 国产真实乱偷精品视频免| 国产精品剧情在线亚洲| 欧美日韩一区二区三区在线看| 麻豆精品国产91久久久久久| 欧美国产精品v| 欧美午夜寂寞影院| 国产一区二区在线电影| 亚洲乱码国产乱码精品精的特点 | 欧美三级日韩三级国产三级| 麻豆91在线播放| 亚洲欧美视频一区| 欧美成人一区二区三区在线观看| 波多野结衣精品在线| 青椒成人免费视频| 亚洲欧美激情一区二区| 欧美一卡二卡在线观看| zzijzzij亚洲日本少妇熟睡| 日本成人在线电影网| 国产精品成人一区二区三区夜夜夜| 欧美日韩国产一级| youjizz国产精品| 久久99国内精品| 亚洲一区二区3| 国产免费观看久久| 日韩欧美精品在线视频| 色88888久久久久久影院野外| 久久精品国内一区二区三区| 一区二区三区不卡视频| 国产欧美日本一区视频| 日韩免费电影一区| 欧美最新大片在线看| 成人av动漫网站|