Commit 68181d1d authored by Guillaume Lazzara's avatar Guillaume Lazzara
Browse files

Add more implementations for box specializations.

	* mln/core/internal/box_impl.hh: Add width, height and depth.
parent 89cf4eee
2010-02-16 Guillaume Lazzara <z@lrde.epita.fr>
Add more implementations for box specializations.
* mln/core/internal/box_impl.hh: Add width, height and depth.
2010-02-16 Guillaume Lazzara <z@lrde.epita.fr>
 
First draft of raw format support.
......@@ -11,26 +17,26 @@
 
Add new 3D neighborhoods and windows.
 
* milena/mln/core/alias/neighb3d.hh,
* milena/mln/win/sline3d.hh: New.
* mln/core/alias/neighb3d.hh,
* mln/win/sline3d.hh: New.
 
2010-02-16 Guillaume Lazzara <z@lrde.epita.fr>
 
Add a new rgb32 type for Qt compatibility.
 
* milena/mln/convert/from_to.hxx: Declare conversion routines.
* mln/convert/from_to.hxx: Declare conversion routines.
 
* milena/mln/value/qt/rgb32.hh: New.
* mln/value/qt/rgb32.hh: New.
 
2010-02-16 Guillaume Lazzara <z@lrde.epita.fr>
 
Fix invalid value type names in dump format.
 
* milena/mln/value/internal/make_generic_name.hh: New.
* mln/value/internal/make_generic_name.hh: New.
 
* milena/mln/value/int_u.hh,
* milena/mln/value/label.hh,
* milena/mln/value/rgb.hh: Make use of the new routine to print a
* mln/value/int_u.hh,
* mln/value/label.hh,
* mln/value/rgb.hh: Make use of the new routine to print a
correct type names in dump format.
 
2009-11-18 Guillaume Lazzara <z@lrde.epita.fr>
// Copyright (C) 2007, 2008, 2009 EPITA Research and Development Laboratory (LRDE)
// Copyright (C) 2007, 2008, 2009, 2010 EPITA Research and Development
// Laboratory (LRDE)
//
// This file is part of Olena.
//
......@@ -38,6 +39,8 @@
namespace mln
{
// Forward declaration
namespace internal
{
......@@ -79,6 +82,15 @@ namespace mln
/// Give the minimum col.
C max_col() const;
/// Give the width.
unsigned width() const;
/// Give the height.
unsigned height() const;
/// Give the depth.
unsigned depth() const;
};
template <typename C, typename E> // FIXME: Add an extra param to replace 'unsigned'.
......@@ -101,6 +113,13 @@ namespace mln
/// Give the minimum col.
C max_col() const;
/// Give the width.
unsigned width() const;
/// Give the height.
unsigned height() const;
};
template <typename C, typename E> // FIXME: Add an extra param to replace 'unsigned'.
......@@ -187,6 +206,28 @@ namespace mln
}
template <typename C, typename E>
inline
unsigned box_impl_<3, C, E>::width() const
{
return internal::force_exact<E>(*this).bbox().len(2);
}
template <typename C, typename E>
inline
unsigned box_impl_<3, C, E>::height() const
{
return internal::force_exact<E>(*this).bbox().len(1);
}
template <typename C, typename E>
inline
unsigned box_impl_<3, C, E>::depth() const
{
return internal::force_exact<E>(*this).bbox().len(0);
}
// 2
template <typename C, typename E>
......@@ -231,6 +272,20 @@ namespace mln
return internal::force_exact<E>(*this).bbox().pmax()[1];
}
template <typename C, typename E>
inline
unsigned box_impl_<2, C, E>::width() const
{
return internal::force_exact<E>(*this).bbox().len(1);
}
template <typename C, typename E>
inline
unsigned box_impl_<2, C, E>::height() const
{
return internal::force_exact<E>(*this).bbox().len(0);
}
// 1
template <typename C, typename E>
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment