Function
Grlpaging_translate
since: 0.1.6
Declaration [src]
void
grl_paging_translate (
guint skip,
guint count,
guint max_page_size,
guint* page_size,
guint* page_number,
guint* internal_offset
)
Description [src]
Grilo browsing implements a paging mechanism through skip
and count
values.
But there are some services (like Jamendo or Flickr) where paging is done through a page number and page size: user request all elements in a page, specifying in most cases what is the page size.
This function is a helper for this task, computing from skip
and count
what
is the optimal value of page size (limited by max_page_size
), which page
should the user request, and where requested data start inside the page.
By optimal we mean that it computes those values so only one page is required to satisfy the data, using the smallest page size. If user is limiting page size, then more requests to services might be needed. But still page size will be an optimal value.
If page_size
is NULL
, then page size will be max_page_size
. If the later
is also 0, then page size will be #G_MAXUINT.
Available since: 0.1.6
Parameters
skip
-
Type:
guint
Number of elements to skip.
count
-
Type:
guint
Number of elements to retrieve.
max_page_size
-
Type:
guint
Maximum value for page size (0 for unlimited size)
page_size
-
Type:
guint*
Optimal page size.
The data is owned by the caller of the function. page_number
-
Type:
guint*
Page which contain the first element to retrieve (starting at 1)
The data is owned by the caller of the function. internal_offset
-
Type:
guint*
In the
page_number
, offset where first element can be found (starting at 0)The data is owned by the caller of the function.