Program Listing for File dimension_checker.hpp

Return to documentation for file (cosm/spatial/common/dimension_checker.hpp)

#pragma once

/*******************************************************************************
 * Includes
 ******************************************************************************/
#include "rcppsw/math/vector2.hpp"
#include "rcppsw/types/discretize_ratio.hpp"
#include "rcppsw/spatial/euclidean_dist.hpp"

#include "cosm/cosm.hpp"

/*******************************************************************************
 * Namespaces/Decls
 ******************************************************************************/
namespace cosm::spatial {

/*******************************************************************************
 * Class Definitions
 ******************************************************************************/
class dimension_checker {
 public:
  static rmath::vector2d even_multiple(const rtypes::discretize_ratio& res,
                                       const rmath::vector2d& to_check);
  static rspatial::euclidean_dist even_multiple(const rtypes::discretize_ratio& res,
                                            const rspatial::euclidean_dist& to_check);

  static rmath::vector2d odd_dsize(const rtypes::discretize_ratio& res,
                                   const rmath::vector2d& to_check);
  static rspatial::euclidean_dist odd_dsize(const rtypes::discretize_ratio& res,
                                        const rspatial::euclidean_dist& to_check);
};

} /* namespace cosm::spatial */