kglist.h

来自「AMLOGIC DPF source code」· C头文件 代码 · 共 736 行 · 第 1/2 页

H
736
字号

protected:
	class InventoryItemEntry_s : public entry_s
	{
	public:
		KGInventoryItemSpec element;
	}; 

	virtual void DestroyEntry(KGListHandle handle);
};
// ()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()
typedef struct KGInventorySpec {
	CKGInventoryList inventoryList;
	CKGCountryList countryList;
} KGInventorySpec;
#endif /* ! AVOS */

/** List of sites providing specific families of services for a given language and country */

/** Site - this *should* be in KGAgTypes.h, which see. */
typedef enum siteStatus_e {
	siteUnknown,
	siteLive,	/**< Site is deployed and available. */
	siteDown,	/**< Site is deployed but temporarily unavailable.  Do not attempt to access any services 
			on it more frequently than once every 5 minutes until it becomes available again. */
	siteNot_deployed	/**< Site is not yet ready for use. */
} siteStatus_e;

typedef struct KGSiteSpec {
	siteStatus_e	status;	/**< See explanation above */
#ifdef AVOS
	char	 		language[32];	/**< ISO 639 language code for the user抯 primary language. */
	char			country[32];	/**< ISO country code for the user抯 primary location.  Note that this is 
								the 2-letter code as specified in ISO 3166-1-alpha-2 code elements. */
	KGServiceSpec * loginService;
	KGServiceSpec * queryService;
	KGServiceSpec * uploadService;
#else /* AVOS */
	CKGString		language;	/**< ISO 639 language code for the user抯 primary language. */
	CKGString		country;	/**< ISO country code for the user抯 primary location.  Note that this is 
								the 2-letter code as specified in ISO 3166-1-alpha-2 code elements. */
	CKGString		variant;	/**< Service specific.  */
	int				expires;	/**< Number of minutes after which the information contained in this 
								reply should be considered invalid. */
	CKGServiceList serviceList; /**< List of services available at this site */
#endif /* AVOS */
} KGSiteSpec;

#ifndef AVOS
class CKGSiteList : public CKGList
{
public:
	CKGSiteList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. 
	
	Copies the data from the given 'elem' into the new list element. 

	\retval	Returns the handle of the new item or NULL if an error occurred. */
	KGListHandle InsertEntry (KGListHandle handle, const KGSiteSpec & elem);

/** \brief Returns a reference to the site specification member of the entry identified 
	by the given handle. If the given handle is not in the list, returns a reference to 
	the given site specification. */
	KGSiteSpec &  get (KGListHandle handle, KGSiteSpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGSiteSpec & elem) const;

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGSiteSpec & elem) const;

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGSiteSpec & elem) const;

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGSiteSpec & elem) const;

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGSiteSpec & elem);
	

	virtual	~CKGSiteList(void); 

protected:
	class siteEntry_s : public entry_s
	{
	public:
		KGSiteSpec element;
	}; 

	virtual void DestroyEntry(KGListHandle handle);
};

/** List of Gallery albums, either mine or my friends'. */

class CKGAlbumList : public CKGList
{
public:
	CKGAlbumList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. 
	
	Copies the data from the given 'elem' into the new list element. 

	\return Returns the handle of the new item or NULL if an error occurred.  */
	KGListHandle InsertEntry (KGListHandle handle, const KGAlbumSpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGAlbumSpec & elem);

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGAlbumSpec & elem);

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGAlbumSpec & elem);

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGAlbumSpec & elem);

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGAlbumSpec & elem);
	

	virtual	~CKGAlbumList(void); 

protected:
	typedef struct albumEntry_s : public entry_s
	{
		KGAlbumSpec element;
	};

	virtual void DestroyEntry(KGListHandle handle);
};
//////////////////////////////////////

/** List of Url Types. */

class CKGUrlTypeList : public CKGList
{
public:
	CKGUrlTypeList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. Returns the handle of the
	new item or NULL if an error occurred. */
	KGListHandle InsertEntry (KGListHandle handle, const KGUrlTypeSpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGUrlTypeSpec & elem);

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGUrlTypeSpec & elem);

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGUrlTypeSpec & elem);

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGUrlTypeSpec & elem);

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGUrlTypeSpec & elem);
	

	virtual	~CKGUrlTypeList(void); 

protected:
	typedef struct urlEntry_s : public entry_s
	{
		KGUrlTypeSpec element;
	};

	virtual void DestroyEntry(KGListHandle handle);
};
/////////////////////////////////////
/** List of Address book entrys (Friends & Groups). */

class CKGAddressBookList : public CKGList
{
public:
	CKGAddressBookList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. Returns the handle of the
	new item or NULL if an error occurred. */
	KGListHandle InsertEntry (KGListHandle handle, const KGAddressBookEntrySpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGAddressBookEntrySpec & elem);

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGAddressBookEntrySpec & elem);

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGAddressBookEntrySpec & elem);

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGAddressBookEntrySpec & elem);

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGAddressBookEntrySpec & elem);
	

	virtual	~CKGAddressBookList(void); 

protected:
	typedef struct addressEntry_s : public entry_s
	{
		KGAddressBookEntrySpec element;
	};

	virtual void DestroyEntry(KGListHandle handle);
};

/** List of Address book groups (Friends & Groups). */

/************************ Address book group info *****************************/
/** \brief This structure holds the information for a Kodak Gallery address book group (Friends & Groups),

	*/
typedef struct KGAddressBookGroupSpec
{
	CKGString	name;		//
	CKGString	group_id;		//*< The ID for the entry 
	CKGAddressBookGroupMemberList groupMemberList;
	/** Initialization */
}KGAddressBookGroupSpec;

class CKGAddressBookGroupList : public CKGList
{
public:
	CKGAddressBookGroupList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. Returns the handle of the
	new item or NULL if an error occurred. */
	KGListHandle InsertEntry (KGListHandle handle, const KGAddressBookGroupSpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGAddressBookGroupSpec & elem);

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGAddressBookGroupSpec & elem);

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGAddressBookGroupSpec & elem);

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGAddressBookGroupSpec & elem);

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGAddressBookGroupSpec & elem);
	

	virtual	~CKGAddressBookGroupList(void); 

protected:
	typedef struct addressGroupEntry_s : public entry_s
	{
		KGAddressBookGroupSpec element;
	};

	virtual void DestroyEntry(KGListHandle handle);
};
////////////////////////////////////////////////////////////////////////
/** List of Photos from a Gallery album, either mine or my friends'. */

class CKGPhotoList : public CKGList
{
public:
	CKGPhotoList(void);

/** \brief Inserts a new element in front of the one specified by "handle".
	Appends to the list if "handle" == NULL. 
	
	Copies the data from the given 'elem' into the new list element. 

	\retval	Returns the handle of the new item or NULL if an error occurred.  */
	KGListHandle InsertEntry (KGListHandle handle, const KGPhotoSpec & elem);

/** \brief Returns the handle of the first entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle FirstEntry (KGPhotoSpec & elem);

/** \brief Returns the handle of the last entry in the list and fills in
	the supplied list element with the data associated with the returned handle. */
	KGListHandle LastEntry (KGPhotoSpec & elem);

/** \brief Returns the handle of the list entry that succeeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle NextEntry (KGListHandle handle, KGPhotoSpec & elem);

/** \brief Returns the handle of the list entry that preceeds the given handle and 
	fills in the supplied list element with the data associated with the returned handle. */
	KGListHandle PrevEntry (KGListHandle handle, KGPhotoSpec & elem);

/** \brief Remove the entry specified by the given handle and free any associated
	resources. The second form fills in the supplied list element with the data 
	associated with the given handle. Returns the handle of the next entry if it
	exists or the previous entry if it exists or NULL if neither exists or if an 
	error occurred. */
	KGListHandle RemoveEntry (KGListHandle handle);
	KGListHandle RemoveEntry (KGListHandle handle, KGPhotoSpec & elem);
	

	virtual	~CKGPhotoList(void); 

protected:
	class photoEntry_s : public entry_s
	{
	public:
		KGPhotoSpec element;
	}; 

	virtual void DestroyEntry(KGListHandle handle);
};
#endif /* ! AVOS */


#endif /* KG_LIST_H */

⌨️ 快捷键说明

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