Struct opencv::core::Range

source ·
pub struct Range { /* private fields */ }
Expand description

Template class specifying a continuous subsequence (slice) of a sequence.

The class is used to specify a row or a column span in a matrix ( Mat ) and for many other purposes. Range(a,b) is basically the same as a:b in Matlab or a..b in Python. As in Python, start is an inclusive left boundary of the range and end is an exclusive right boundary of the range. Such a half-opened interval is usually denoted as inline formula .

The static method Range::all() returns a special variable that means “the whole sequence” or “the whole range”, just like “ : “ in Matlab or “ … “ in Python. All the methods and functions in OpenCV that take Range support this special Range::all() value. But, of course, in case of your own custom processing, you will probably have to check and handle it explicitly:

   void my_function(..., const Range& r, ....)
   {
       if(r == Range::all()) {
           // process all the data
       }
       else {
           // process [r.start, r.end)
       }
   }

Implementations§

source§

impl Range

source

pub fn default() -> Result<Range>

////////////////////////////// Range /////////////////////////////////

source

pub fn new(_start: i32, _end: i32) -> Result<Range>

source

pub fn all() -> Result<Range>

Trait Implementations§

source§

impl Boxed for Range

source§

unsafe fn from_raw(ptr: <Range as OpenCVFromExtern>::ExternReceive) -> Self

Wrap the specified raw pointer Read more
source§

fn into_raw(self) -> <Range as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying raw pointer while consuming this wrapper. Read more
source§

fn as_raw(&self) -> <Range as OpenCVTypeExternContainer>::ExternSend

Return the underlying raw pointer. Read more
source§

fn as_raw_mut(&mut self) -> <Range as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying mutable raw pointer Read more
source§

impl Debug for Range

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for Range

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl From<_Range> for Range

source§

fn from(s: _Range) -> Self

Converts to this type from the input type.
source§

impl RangeTrait for Range

source§

fn as_raw_mut_Range(&mut self) -> *mut c_void

source§

fn set_start(&mut self, val: i32)

source§

fn set_end(&mut self, val: i32)

source§

impl RangeTraitConst for Range

source§

fn as_raw_Range(&self) -> *const c_void

source§

fn start(&self) -> i32

source§

fn end(&self) -> i32

source§

fn size(&self) -> Result<i32>

source§

fn empty(&self) -> Result<bool>

source§

impl Send for Range

Auto Trait Implementations§

§

impl Freeze for Range

§

impl RefUnwindSafe for Range

§

impl !Sync for Range

§

impl Unpin for Range

§

impl UnwindSafe for Range

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Mat> ModifyInplace for Mat
where Mat: Boxed,

source§

unsafe fn modify_inplace<Res>( &mut self, f: impl FnOnce(&Mat, &mut Mat) -> Res ) -> Res

Helper function to call OpenCV functions that allow in-place modification of a Mat or another similar object. By passing a mutable reference to the Mat to this function your closure will get called with the read reference and a write references to the same Mat. This is of course unsafe as it breaks the Rust aliasing rules, but it might be useful for some performance sensitive operations. One example of an OpenCV function that allows such in-place modification is imgproc::threshold. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.