Method: OpenCV::PtrAlgorithm.new

Defined in:
lib/ruby/ropencv/ropencv_types.rb

.new(*args) ⇒ Object

Raises:

  • (ArgumentError)


16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
# File 'lib/ruby/ropencv/ropencv_types.rb', line 16027

def self.new(*args)
    if args.first.is_a?(FFI::Pointer) || args.first.is_a?(PtrAlgorithmStruct)
        raise ArgumentError, "too many arguments for creating #{self.name} from Pointer" unless args.size == 1
        return super(args.first)
    end
    # wrapper for Ptr_Algorithm::Ptr_Algorithm(const Ptr_Algorithm other)
    @@ptr_algorithm_ptr_algorithm_defaults0 ||= [nil]
    if(args.size >= 1 && args.size <= 1)
        args.size.upto(0) do |i|
            args[i] = @@ptr_algorithm_ptr_algorithm_defaults0[i]
        end
        begin
            return Rbind::ptr_algorithm_ptr_algorithm(*args)
        rescue TypeError => e
            @error = e
        end
    end

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