12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #include <grass/gis.h>
- #include <grass/gmath.h>
- /*!
- * \fn long G_math_max_pow2 (const long n)
- *
- * \brief Finds least power of 2 >= <b>n</b>
- *
- * Finds least power of 2 >= <b>n</b>.
- *
- * \param[in] n
- * \return long
- */
- long G_math_max_pow2 (const long n)
- {
- long p2, n1;
- n1 = n >> 1;
- p2 = 1;
- while (n1 > 0)
- {
- n1 >>= 1;
- p2 <<= 1;
- }
- if (p2 < n) p2 <<=1;
- return(p2);
- }
- /*!
- * \fn long G_math_min_pow2 (const long n)
- *
- * \brief Finds largest power of 2 <= <b>n</b>
- *
- * Finds largest power of 2 <= <b>n</b>.
- *
- * \param[in] n
- * \return long
- */
- long G_math_min_pow2 (const long n)
- {
- long p2, n1;
- n1 = n >> 1;
- p2 = 1;
- while (n1 > 0)
- {
- n1 >>= 1;
- p2 <<= 1;
- }
- return(p2);
- }
|