LCOV - code coverage report
Current view: top level - gui/include/pos - pos_search_result_page.inl (source / functions) Hit Total Coverage
Test: crystal-facet-uml_v1.65.6_covts Lines: 0 76 0.0 %
Date: 2025-09-25 21:07:53 Functions: 0 22 0.0 %

          Line data    Source code
       1             : /* File: pos_search_result_page.inl; Copyright and License: see below */
       2             : 
       3             : #include <assert.h>
       4             : 
       5           0 : static inline void pos_search_result_page_init ( pos_search_result_page_t *this_, uint32_t buffer_start )
       6             : {
       7           0 :     (*this_).buffer_start = buffer_start;
       8           0 :     (*this_).buffer_length = 0;
       9           0 :     (*this_).buffer_more_after = false;
      10           0 :     (*this_).page_start = buffer_start;
      11           0 :     (*this_).page_length = 0;
      12           0 :     (*this_).has_prev_page = false;
      13           0 :     shape_int_rectangle_init_empty( &((*this_).button_prev_box) );
      14           0 :     (*this_).has_next_page = false;
      15           0 :     shape_int_rectangle_init_empty( &((*this_).button_next_box) );
      16           0 : }
      17             : 
      18           0 : static inline void pos_search_result_page_reinit ( pos_search_result_page_t *this_, uint32_t buffer_start )
      19             : {
      20           0 :     pos_search_result_page_destroy( this_ );
      21           0 :     pos_search_result_page_init( this_, buffer_start );
      22           0 : }
      23             : 
      24           0 : static inline void pos_search_result_page_destroy ( pos_search_result_page_t *this_ )
      25             : {
      26           0 :     (*this_).buffer_length = 0;
      27           0 :     shape_int_rectangle_destroy( &((*this_).button_prev_box) );
      28           0 :     shape_int_rectangle_destroy( &((*this_).button_next_box) );
      29           0 : }
      30             : 
      31           0 : static inline const pos_search_result_t *pos_search_result_page_get_search_result_layout_const ( const pos_search_result_page_t *this_, uint32_t index )
      32             : {
      33           0 :     assert( index >= (*this_).buffer_start );
      34           0 :     assert( index < (*this_).buffer_start + (*this_).buffer_length );
      35           0 :     return &((*this_).element_pos[ index - (*this_).buffer_start ]);
      36             : }
      37             : 
      38           0 : static inline pos_search_result_t *pos_search_result_page_get_search_result_layout_ptr ( pos_search_result_page_t *this_, uint32_t index )
      39             : {
      40           0 :     assert( index >= (*this_).buffer_start );
      41           0 :     assert( index < (*this_).buffer_start + (*this_).buffer_length );
      42           0 :     return &((*this_).element_pos[ index - (*this_).buffer_start ]);
      43             : }
      44             : 
      45           0 : static inline u8_error_t pos_search_result_page_add_search_result ( pos_search_result_page_t *this_, const data_search_result_t *search_result )
      46             : {
      47           0 :     u8_error_t result = U8_ERROR_NONE;
      48           0 :     if ( (*this_).buffer_length < POS_SEARCH_RESULT_PAGE_MAX_PAGE_SIZE )
      49             :     {
      50           0 :         data_search_result_copy( &((*this_).result_list_buf[(*this_).buffer_length]), search_result );
      51           0 :         pos_search_result_init( &((*this_).element_pos[(*this_).buffer_length]),
      52           0 :                                 &((*this_).result_list_buf[(*this_).buffer_length])
      53             :                               );
      54           0 :         (*this_).buffer_length ++;
      55             :     }
      56             :     else
      57             :     {
      58           0 :         result = U8_ERROR_ARRAY_BUFFER_EXCEEDED;
      59             :     }
      60           0 :     return result;
      61             : }
      62             : 
      63           0 : static inline uint32_t pos_search_result_page_get_buffer_start ( const pos_search_result_page_t *this_ )
      64             : {
      65           0 :     return (*this_).buffer_start;
      66             : }
      67             : 
      68           0 : static inline uint32_t pos_search_result_page_get_buffer_length ( const pos_search_result_page_t *this_ )
      69             : {
      70           0 :     return (*this_).buffer_length;
      71             : }
      72             : 
      73           0 : static inline bool pos_search_result_page_get_buffer_more_after ( const pos_search_result_page_t *this_ )
      74             : {
      75           0 :     return (*this_).buffer_more_after;
      76             : }
      77             : 
      78           0 : static inline void pos_search_result_page_set_buffer_more_after ( pos_search_result_page_t *this_, bool buffer_more_after )
      79             : {
      80           0 :     (*this_).buffer_more_after = buffer_more_after;
      81           0 : }
      82             : 
      83           0 : static inline uint32_t pos_search_result_page_get_page_start ( const pos_search_result_page_t *this_ )
      84             : {
      85           0 :     return (*this_).page_start;
      86             : }
      87             : 
      88           0 : static inline void pos_search_result_page_set_page_start ( pos_search_result_page_t *this_, uint32_t page_start )
      89             : {
      90           0 :     (*this_).page_start = page_start;
      91           0 : }
      92             : 
      93           0 : static inline uint32_t pos_search_result_page_get_page_length ( const pos_search_result_page_t *this_ )
      94             : {
      95           0 :     return (*this_).page_length;
      96             : }
      97             : 
      98           0 : static inline void pos_search_result_page_set_page_length ( pos_search_result_page_t *this_, uint32_t page_length )
      99             : {
     100           0 :     (*this_).page_length = page_length;
     101           0 : }
     102             : 
     103           0 : static inline bool pos_search_result_page_has_prev_page ( const pos_search_result_page_t *this_ )
     104             : {
     105           0 :     return (*this_).has_prev_page;
     106             : }
     107             : 
     108           0 : static inline void pos_search_result_page_set_has_prev_page ( pos_search_result_page_t *this_, bool has_prev_page )
     109             : {
     110           0 :     (*this_).has_prev_page = has_prev_page;
     111           0 : }
     112             : 
     113           0 : static inline const shape_int_rectangle_t *pos_search_result_page_get_button_prev_box_const ( const pos_search_result_page_t *this_ )
     114             : {
     115           0 :      return &((*this_).button_prev_box);
     116             : }
     117             : 
     118           0 : static inline void pos_search_result_page_set_button_prev_box ( pos_search_result_page_t *this_, const shape_int_rectangle_t *button_prev_box )
     119             : {
     120           0 :     shape_int_rectangle_replace( &((*this_).button_prev_box), button_prev_box );
     121           0 : }
     122             : 
     123           0 : static inline bool pos_search_result_page_has_next_page ( const pos_search_result_page_t *this_ )
     124             : {
     125           0 :     return (*this_).has_next_page;
     126             : }
     127             : 
     128           0 : static inline void pos_search_result_page_set_has_next_page ( pos_search_result_page_t *this_, bool has_next_page )
     129             : {
     130           0 :     (*this_).has_next_page = has_next_page;
     131           0 : }
     132             : 
     133           0 : static inline const shape_int_rectangle_t *pos_search_result_page_get_button_next_box_const ( const pos_search_result_page_t *this_ )
     134             : {
     135           0 :     return &((*this_).button_next_box);
     136             : }
     137             : 
     138           0 : static inline void pos_search_result_page_set_button_next_box ( pos_search_result_page_t *this_, const shape_int_rectangle_t *button_next_box )
     139             : {
     140           0 :     shape_int_rectangle_replace( &((*this_).button_next_box), button_next_box );
     141           0 : }
     142             : 
     143             : 
     144             : /*
     145             : Copyright 2025-2025 Andreas Warnke
     146             : 
     147             : Licensed under the Apache License, Version 2.0 (the "License");
     148             : you may not use this file except in compliance with the License.
     149             : You may obtain a copy of the License at
     150             : 
     151             :     http://www.apache.org/licenses/LICENSE-2.0
     152             : 
     153             : Unless required by applicable law or agreed to in writing, software
     154             : distributed under the License is distributed on an "AS IS" BASIS,
     155             : WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     156             : See the License for the specific language governing permissions and
     157             : limitations under the License.
     158             : */

Generated by: LCOV version 1.16