Class: OpenCV::Std::Vector::Float

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)


33821
33822
33823
33824
33825
33826
33827
33828
33829
33830
33831
33832
33833
33834
33835
33836
33837
33838
33839
33840
33841
33842
33843
33844
33845
33846
33847
33848
33849
33850
33851
33852
33853
33854
33855
# File 'lib/ropencv/ropencv_types.rb', line 33821

def self.new(*args)
    if args.first.is_a?(FFI::Pointer) || args.first.is_a?(Vector::FloatStruct)
        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<float>::vector<float>()
    @@std_vector_float_vector_float_defaults0 ||= []
    if(args.size >= 0 && args.size <= 0)
        targs = args.clone
        targs.size.upto(-1) do |i|
            targs[i] = @@std_vector_float_vector_float_defaults0[i]
        end
        begin
                return Rbind::std_vector_float_vector_float(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    # overloaded method wrapper for std::vector<float>::vector<float>(std::vector<float> other)
    @@std_vector_float_vector_float2_defaults1 ||= [nil]
    if(args.size >= 1 && args.size <= 1)
        targs = args.clone
        targs.size.upto(0) do |i|
            targs[i] = @@std_vector_float_vector_float2_defaults1[i]
        end
        begin
                return Rbind::std_vector_float_vector_float2(*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



33813
33814
33815
# File 'lib/ropencv/ropencv_types.rb', line 33813

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

Instance Method Details

#<<(val) ⇒ Object



34062
34063
34064
34065
# File 'lib/ropencv/ropencv_types.rb', line 34062

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

#[](idx) ⇒ Float

Note:

method wrapper for float std::vector::operator

Parameters:

  • size (Size_T)

Returns:



33978
33979
33980
33981
33982
# File 'lib/ropencv/ropencv_types.rb', line 33978

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

#at(size) ⇒ Float

Note:

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

Parameters:

  • size (Size_T)

Returns:



33987
33988
33989
33990
33991
# File 'lib/ropencv/ropencv_types.rb', line 33987

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

#backFloat

Note:

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

Returns:



34002
34003
34004
34005
# File 'lib/ropencv/ropencv_types.rb', line 34002

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

#capacitySize_T

Note:

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

Returns:

  • (Size_T)


33955
33956
33957
33958
# File 'lib/ropencv/ropencv_types.rb', line 33955

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

#clearVoid

Note:

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

Returns:

  • (Void)


33948
33949
33950
33951
# File 'lib/ropencv/ropencv_types.rb', line 33948

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

#dataVoid

Note:

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

Returns:

  • (Void)


34009
34010
34011
34012
# File 'lib/ropencv/ropencv_types.rb', line 34009

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

#delete_if(&block) ⇒ Object



34066
34067
34068
34069
34070
34071
34072
34073
# File 'lib/ropencv/ropencv_types.rb', line 34066

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



34052
34053
34054
34055
34056
34057
34058
34059
34060
34061
# File 'lib/ropencv/ropencv_types.rb', line 34052

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)


33962
33963
33964
33965
# File 'lib/ropencv/ropencv_types.rb', line 33962

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

#frontFloat

Note:

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

Returns:



33995
33996
33997
33998
# File 'lib/ropencv/ropencv_types.rb', line 33995

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

#get_elementFloat

Note:

method wrapper for float std::vector::operator

Parameters:

  • size (Size_T)

Returns:



34041
34042
34043
34044
34045
# File 'lib/ropencv/ropencv_types.rb', line 34041

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

#pop_backVoid

Note:

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

Returns:

  • (Void)


34024
34025
34026
34027
# File 'lib/ropencv/ropencv_types.rb', line 34024

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

#push_back(other) ⇒ Void

Note:

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

Parameters:

Returns:

  • (Void)


34017
34018
34019
34020
# File 'lib/ropencv/ropencv_types.rb', line 34017

def push_back(other)
    __validate_pointer__
    Rbind::std_vector_float_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)


33970
33971
33972
33973
# File 'lib/ropencv/ropencv_types.rb', line 33970

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

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

Note:

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

methods

Parameters:

  • size (Size_T)
  • val (Float) (defaults to: loat())

Returns:

  • (Void)


33934
33935
33936
33937
# File 'lib/ropencv/ropencv_types.rb', line 33934

def resize(size, val = loat())
    __validate_pointer__
    Rbind::std_vector_float_resize( self, size, val)
end

#sizeSize_T

Note:

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

Returns:

  • (Size_T)


33941
33942
33943
33944
# File 'lib/ropencv/ropencv_types.rb', line 33941

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

#swap(other) ⇒ Void

Note:

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

Parameters:

Returns:

  • (Void)


34032
34033
34034
34035
# File 'lib/ropencv/ropencv_types.rb', line 34032

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

#to_sObject

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



33921
33922
33923
# File 'lib/ropencv/ropencv_types.rb', line 33921

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

#validate_index(idx) ⇒ Object



34047
34048
34049
34050
34051
# File 'lib/ropencv/ropencv_types.rb', line 34047

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