wardirlistnode.h

来自「ftpserver very good sample」· C头文件 代码 · 共 140 行

H
140
字号
/** */#ifndef WAR_DIRLIST_NODE_H#define WAR_DIRLIST_NODE_H/* SYSTEM INCLUDES *//* PROJECT INCLUDES */#ifndef WAR_IMPLEMENT_MEMORY_H#   include "WarImplementMemory.h"#endif#ifndef WAR_SVR_PATH_H#   include "WarSvrPath.h"#endif#ifndef WAR_DIR_LIST_NODE_DATA_H#	include "WarDirListNodeData.h"#endif/* LOCAL INCLUDES *//* FORWARD REFERENCES */#ifdef __cplusplusextern "C" {#endif/****************** BEGIN OLD STYLE C spesific ********//****************** END OLD STYLE C spesific **********/#ifdef __cplusplus }#endif/****************** BEGIN C++ spesific ****************/#ifdef __cplusplusclass WarDirListNode :     public WarImplementMemory<char>,    public WarDirListNodeData,	public WarSvrEnums{public:    // LIFECYCLE    /** Constructor.        The Name buffer-space is normally allocated         from \Ref{WarMemoryBuffer} to allow fast memory         management and reduce fragmentation. It is         stored as the user will see it in UTF-8. The         encoding is performed by the calling module,         and must be consistent in  order for         comparing etc. to work.        @param Name is preallocated, and will not         be freed.         @param NameLen lenght of Name, as returned         by {\ttstrlen(Name);}    */    inline WarDirListNode(war_ccstr_t Name, size_t NameLen)    {        mName = (war_cstr_t)Name;        mNameLen = NameLen;    }    // OPERATORS    /** Compare function, used to lookup an entry internally. */    inline bool operator == (const WarDirListNode& from) const    {        if (mNameLen != from.mNameLen)            return false;        return strcmp(mName, from.mName) == 0;    }        /** Compare function, used to lookup an entry internally. */    inline bool operator < (const WarDirListNode& from) const    {        return strcmp(mName, from.mName) < 0;    }    inline void operator = (const FileTypeE from)    {        mType = from;    }    /** Assignment. */    void operator = (const WarSvrPath& from);        /** Assignment. */    void operator = (const war_stat_t& st);	/** Assignment. */	void operator = (const WarDirListNodeData& from);#ifdef WIN32    /// WIN32 only    void operator = (const WIN32_FIND_DATA& D);#endif    /** Assignment.        {\bfNB: name is not copied as it must be allocated!}    */    void operator = (const WarDirListNode& from);        // OPERATIONS                           // ACCESS    // INQUIRY         ///    war_cstr_t mName;     ///    size_t mNameLen;    ///protected:private:};/* INLINE METHODS *//* EXTERNAL REFERENCES */#endif /* __cplusplus *//****************** END C++ spesific ******************/#endif  /* WAR_DIRLIST_NODE_H_ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?