Line data Source code
1 : /* File: geometry_3dir.inl; Copyright and License: see below */ 2 : 3 : #include "u8/u8_trace.h" 4 : #include "u8/u8_log.h" 5 : #include <assert.h> 6 : 7 0 : static inline bool geometry_3dir_equals ( const geometry_3dir_t *this_, const geometry_3dir_t *that ) 8 : { 9 0 : const bool result 10 0 : = (( (*this_).first == (*that).first )&&( (*this_).second == (*that).second )&&( (*this_).third == (*that).third )); 11 0 : return result; 12 : } 13 : 14 : static inline geometry_direction_t geometry_3dir_get_first ( const geometry_3dir_t *this_ ) 15 : { 16 : return (*this_).first; 17 : } 18 : 19 : static inline geometry_direction_t geometry_3dir_get_second ( const geometry_3dir_t *this_ ) 20 : { 21 : return (*this_).second; 22 : } 23 : 24 : static inline geometry_direction_t geometry_3dir_get_third ( const geometry_3dir_t *this_ ) 25 : { 26 : return (*this_).third; 27 : } 28 : 29 0 : static inline bool geometry_3dir_is_first_h ( const geometry_3dir_t *this_ ) 30 : { 31 0 : return ( (*this_).first == GEOMETRY_DIRECTION_LEFT )||( (*this_).first == GEOMETRY_DIRECTION_RIGHT ); 32 : } 33 : 34 0 : static inline bool geometry_3dir_is_first_v ( const geometry_3dir_t *this_ ) 35 : { 36 0 : return ( (*this_).first == GEOMETRY_DIRECTION_UP )||( (*this_).first == GEOMETRY_DIRECTION_DOWN ); 37 : } 38 : 39 0 : static inline bool geometry_3dir_is_second_h ( const geometry_3dir_t *this_ ) 40 : { 41 0 : return ( (*this_).second == GEOMETRY_DIRECTION_LEFT )||( (*this_).second == GEOMETRY_DIRECTION_RIGHT ); 42 : } 43 : 44 0 : static inline bool geometry_3dir_is_second_v ( const geometry_3dir_t *this_ ) 45 : { 46 0 : return ( (*this_).second == GEOMETRY_DIRECTION_UP )||( (*this_).second == GEOMETRY_DIRECTION_DOWN ); 47 : } 48 : 49 0 : static inline bool geometry_3dir_is_third_h ( const geometry_3dir_t *this_ ) 50 : { 51 0 : return ( (*this_).third == GEOMETRY_DIRECTION_LEFT )||( (*this_).third == GEOMETRY_DIRECTION_RIGHT ); 52 : } 53 : 54 0 : static inline bool geometry_3dir_is_third_v ( const geometry_3dir_t *this_ ) 55 : { 56 0 : return ( (*this_).third == GEOMETRY_DIRECTION_UP )||( (*this_).third == GEOMETRY_DIRECTION_DOWN ); 57 : } 58 : 59 : 60 : /* 61 : Copyright 2021-2024 Andreas Warnke 62 : 63 : Licensed under the Apache License, Version 2.0 (the "License"); 64 : you may not use this file except in compliance with the License. 65 : You may obtain a copy of the License at 66 : 67 : http://www.apache.org/licenses/LICENSE-2.0 68 : 69 : Unless required by applicable law or agreed to in writing, software 70 : distributed under the License is distributed on an "AS IS" BASIS, 71 : WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 72 : See the License for the specific language governing permissions and 73 : limitations under the License. 74 : */