Class: OpenCV::Std::Vector::Int

Inherits:
Object
  • Object
show all
Extended by:
FFI::DataConverter
Includes:
Enumerable
Defined in:
lib/ropencv/ropencv_types.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.vectorObject .vectorObject

Overloads:

Raises:

  • (ArgumentError)


32884
32885
32886
32887
32888
32889
32890
32891
32892
32893
32894
32895
32896
32897
32898
32899
32900
32901
32902
32903
32904
32905
32906
32907
32908
32909
32910
32911
32912
32913
32914
32915
32916
32917
32918
# File 'lib/ropencv/ropencv_types.rb', line 32884

def self.new(*args)
    if args.first.is_a?(FFI::Pointer) || args.first.is_a?(Vector::IntStruct)
        raise ArgumentError, "too many arguments for creating #{self.name} from Pointer" unless args.size == 1
        return super(args.first)
    end
    # overloaded method wrapper for std::vector<int>::vector<int>()
    @@std_vector_int_vector_int_defaults0 ||= []
    if(args.size >= 0 && args.size <= 0)
        targs = args.clone
        targs.size.upto(-1) do |i|
            targs[i] = @@std_vector_int_vector_int_defaults0[i]
        end
        begin
                return Rbind::std_vector_int_vector_int(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    # overloaded method wrapper for std::vector<int>::vector<int>(std::vector<int> other)
    @@std_vector_int_vector_int2_defaults1 ||= [nil]
    if(args.size >= 1 && args.size <= 1)
        targs = args.clone
        targs.size.upto(0) do |i|
            targs[i] = @@std_vector_int_vector_int2_defaults1[i]
        end
        begin
                return Rbind::std_vector_int_vector_int2(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    raise ArgumentError, "no constructor for #{self}(#{args.inspect})"
end

.nullObject

returns a null pointer to the object



32876
32877
32878
# File 'lib/ropencv/ropencv_types.rb', line 32876

def self.null
    new(Vector::IntStruct.new)
end

Instance Method Details

#<<(val) ⇒ Object



33125
33126
33127
33128
# File 'lib/ropencv/ropencv_types.rb', line 33125

def <<(val)
    push_back(val)
    self
end

#[](idx) ⇒ Fixnum

Note:

method wrapper for int std::vector::operator

Parameters:

  • size (Size_T)

Returns:



33041
33042
33043
33044
33045
# File 'lib/ropencv/ropencv_types.rb', line 33041

def [](size)
validate_index(size)
    __validate_pointer__
    Rbind::std_vector_int_operator_array( self, size)
end

#at(size) ⇒ Fixnum

Note:

method wrapper for int std::vector::at(size_t size)

Parameters:

  • size (Size_T)

Returns:



33050
33051
33052
33053
33054
# File 'lib/ropencv/ropencv_types.rb', line 33050

def at(size)
validate_index(size)
    __validate_pointer__
    Rbind::std_vector_int_at( self, size)
end

#backFixnum

Note:

method wrapper for int std::vector::back()

Returns:



33065
33066
33067
33068
# File 'lib/ropencv/ropencv_types.rb', line 33065

def back()
    __validate_pointer__
    Rbind::std_vector_int_back( self)
end

#capacitySize_T

Note:

method wrapper for size_t std::vector::capacity()

Returns:

  • (Size_T)


33018
33019
33020
33021
# File 'lib/ropencv/ropencv_types.rb', line 33018

def capacity()
    __validate_pointer__
    Rbind::std_vector_int_capacity( self)
end

#clearVoid

Note:

method wrapper for void std::vector::clear()

Returns:

  • (Void)


33011
33012
33013
33014
# File 'lib/ropencv/ropencv_types.rb', line 33011

def clear()
    __validate_pointer__
    Rbind::std_vector_int_clear( self)
end

#dataVoid

Note:

method wrapper for void* std::vector::data()

Returns:

  • (Void)


33072
33073
33074
33075
# File 'lib/ropencv/ropencv_types.rb', line 33072

def data()
    __validate_pointer__
    Rbind::std_vector_int_data( self)
end

#delete_if(&block) ⇒ Object



33129
33130
33131
33132
33133
33134
33135
33136
# File 'lib/ropencv/ropencv_types.rb', line 33129

def delete_if(&block)
    v = self.class.new
    each do |i|
         v << i if !yield(i)
    end
    v.swap(self)
    self
end

#each(&block) ⇒ Object



33115
33116
33117
33118
33119
33120
33121
33122
33123
33124
# File 'lib/ropencv/ropencv_types.rb', line 33115

def each(&block)
    if block
         s = size
         0.upto(s-1) do |i|
             yield self[i]
         end
    else
        Enumerator.new(self)
    end
end

#emptyBool

Note:

method wrapper for bool std::vector::empty()

Returns:

  • (Bool)


33025
33026
33027
33028
# File 'lib/ropencv/ropencv_types.rb', line 33025

def empty()
    __validate_pointer__
    Rbind::std_vector_int_empty( self)
end

#frontFixnum

Note:

method wrapper for int std::vector::front()

Returns:



33058
33059
33060
33061
# File 'lib/ropencv/ropencv_types.rb', line 33058

def front()
    __validate_pointer__
    Rbind::std_vector_int_front( self)
end

#get_elementFixnum

Note:

method wrapper for int std::vector::operator

Parameters:

  • size (Size_T)

Returns:



33104
33105
33106
33107
33108
# File 'lib/ropencv/ropencv_types.rb', line 33104

def [](size)
validate_index(size)
    __validate_pointer__
    Rbind::std_vector_int_operator_array( self, size)
end

#pop_backVoid

Note:

method wrapper for void std::vector::pop_back()

Returns:

  • (Void)


33087
33088
33089
33090
# File 'lib/ropencv/ropencv_types.rb', line 33087

def pop_back()
    __validate_pointer__
    Rbind::std_vector_int_pop_back( self)
end

#push_back(other) ⇒ Void

Note:

method wrapper for void std::vector::push_back(int other)

Parameters:

Returns:

  • (Void)


33080
33081
33082
33083
# File 'lib/ropencv/ropencv_types.rb', line 33080

def push_back(other)
    __validate_pointer__
    Rbind::std_vector_int_push_back( self, other)
end

#reserve(size) ⇒ Void

Note:

method wrapper for void std::vector::reserve(size_t size)

Parameters:

  • size (Size_T)

Returns:

  • (Void)


33033
33034
33035
33036
# File 'lib/ropencv/ropencv_types.rb', line 33033

def reserve(size)
    __validate_pointer__
    Rbind::std_vector_int_reserve( self, size)
end

#resize(size, val = Int()) ⇒ Void

Note:

method wrapper for void std::vector::resize(size_t size, int val = int())

methods

Parameters:

  • size (Size_T)
  • val (Fixnum) (defaults to: Int())

Returns:

  • (Void)


32997
32998
32999
33000
# File 'lib/ropencv/ropencv_types.rb', line 32997

def resize(size, val = Int())
    __validate_pointer__
    Rbind::std_vector_int_resize( self, size, val)
end

#sizeSize_T

Note:

method wrapper for size_t std::vector::size()

Returns:

  • (Size_T)


33004
33005
33006
33007
# File 'lib/ropencv/ropencv_types.rb', line 33004

def size()
    __validate_pointer__
    Rbind::std_vector_int_size( self)
end

#swap(other) ⇒ Void

Note:

method wrapper for void std::vector::swap(std::vector other)

Parameters:

Returns:

  • (Void)


33095
33096
33097
33098
# File 'lib/ropencv/ropencv_types.rb', line 33095

def swap(other)
    __validate_pointer__
    Rbind::std_vector_int_swap( self, other)
end

#to_sObject

converts Vector::Int into a string by crawling through all its attributes



32984
32985
32986
# File 'lib/ropencv/ropencv_types.rb', line 32984

def to_s
    "#<std::vector<int> >"
end

#validate_index(idx) ⇒ Object



33110
33111
33112
33113
33114
# File 'lib/ropencv/ropencv_types.rb', line 33110

def validate_index(idx)
    if idx < 0 || idx >= size
        raise RangeError,"#{idx} is out of range [0..#{size-1}]"
    end
end