// File: tomfunkhouser[P]gaps/pkgs/R3Shapes/R3PointSet.cpp
// Function: gaps::R3PointSet::RemovePoint(int)
void R3PointSet::
RemovePoint(int index)
{
  // Remove point at given index
  if (index < (int) positions.size()) positions.erase(positions.begin()+index);
  if (index < (int) normals.size()) normals.erase(normals.begin()+index);
  if (index < (int) colors.size()) colors.erase(colors.begin()+index);
  if (index < (int) timestamps.size()) timestamps.erase(timestamps.begin()+index);
  if (index < (int) category_identifiers.size()) category_identifiers.erase(category_identifiers.begin()+index);
  if (index < (int) instance_identifiers.size()) instance_identifiers.erase(instance_identifiers.begin()+index);
  if (index < (int) weights.size()) values.erase(weights.begin()+index);
  if (index < (int) values.size()) values.erase(values.begin()+index);
}

// Assembly:
subq $0x198, %rsp            # imm = 0x198
movq %rdi, 0x190(%rsp)
movl %esi, 0x18c(%rsp)
movq 0x190(%rsp), %rdi
movq %rdi, 0x78(%rsp)
movl 0x18c(%rsp), %eax
movl %eax, 0x84(%rsp)
callq 0x32410
movq %rax, %rcx
movl 0x84(%rsp), %eax
cmpl %ecx, %eax
jge 0xdce32
movq 0x78(%rsp), %rdi
callq 0xb1230
movq %rax, 0x170(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0x170(%rsp), %rdi
callq 0xdfb10
movq %rax, 0x178(%rsp)
leaq 0x180(%rsp), %rdi
leaq 0x178(%rsp), %rsi
callq 0xdfb50
movq 0x78(%rsp), %rdi
movq 0x180(%rsp), %rsi
callq 0xdfaa0
movq %rax, 0x168(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x74(%rsp)
addq $0x18, %rdi
callq 0xdfb90
movq %rax, %rcx
movl 0x74(%rsp), %eax
cmpl %ecx, %eax
jge 0xdcec4
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0x18, %rax
movq %rax, 0x68(%rsp)
addq $0x18, %rdi
callq 0xdfc20
movq %rax, 0x150(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0x150(%rsp), %rdi
callq 0xdfc50
movq %rax, 0x158(%rsp)
leaq 0x160(%rsp), %rdi
leaq 0x158(%rsp), %rsi
callq 0xdfc90
movq 0x68(%rsp), %rdi
movq 0x160(%rsp), %rsi
callq 0xdfbb0
movq %rax, 0x148(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x64(%rsp)
addq $0x78, %rdi
callq 0xdfcd0
movq %rax, %rcx
movl 0x64(%rsp), %eax
cmpl %ecx, %eax
jge 0xdcf56
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0x78, %rax
movq %rax, 0x58(%rsp)
addq $0x78, %rdi
callq 0xdfd60
movq %rax, 0x130(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0x130(%rsp), %rdi
callq 0xdfd90
movq %rax, 0x138(%rsp)
leaq 0x140(%rsp), %rdi
leaq 0x138(%rsp), %rsi
callq 0xdfdd0
movq 0x58(%rsp), %rdi
movq 0x140(%rsp), %rsi
callq 0xdfcf0
movq %rax, 0x128(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x54(%rsp)
addq $0x90, %rdi
callq 0xdfe10
movq %rax, %rcx
movl 0x54(%rsp), %eax
cmpl %ecx, %eax
jge 0xdcff0
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0x90, %rax
movq %rax, 0x48(%rsp)
addq $0x90, %rdi
callq 0xdfea0
movq %rax, 0x110(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0x110(%rsp), %rdi
callq 0xdfed0
movq %rax, 0x118(%rsp)
leaq 0x120(%rsp), %rdi
leaq 0x118(%rsp), %rsi
callq 0xdff10
movq 0x48(%rsp), %rdi
movq 0x120(%rsp), %rsi
callq 0xdfe30
movq %rax, 0x108(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x44(%rsp)
addq $0xa8, %rdi
callq 0xb09b0
movq %rax, %rcx
movl 0x44(%rsp), %eax
cmpl %ecx, %eax
jge 0xdd08a
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0xa8, %rax
movq %rax, 0x38(%rsp)
addq $0xa8, %rdi
callq 0xb5ba0
movq %rax, 0xf0(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0xf0(%rsp), %rdi
callq 0xdffc0
movq %rax, 0xf8(%rsp)
leaq 0x100(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0xe0000
movq 0x38(%rsp), %rdi
movq 0x100(%rsp), %rsi
callq 0xdff50
movq %rax, 0xe8(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x34(%rsp)
addq $0xc0, %rdi
callq 0xb09b0
movq %rax, %rcx
movl 0x34(%rsp), %eax
cmpl %ecx, %eax
jge 0xdd124
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0xc0, %rax
movq %rax, 0x28(%rsp)
addq $0xc0, %rdi
callq 0xb5ba0
movq %rax, 0xd0(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0xd0(%rsp), %rdi
callq 0xdffc0
movq %rax, 0xd8(%rsp)
leaq 0xe0(%rsp), %rdi
leaq 0xd8(%rsp), %rsi
callq 0xe0000
movq 0x28(%rsp), %rdi
movq 0xe0(%rsp), %rsi
callq 0xdff50
movq %rax, 0xc8(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x24(%rsp)
addq $0xd8, %rdi
callq 0xdfe10
movq %rax, %rcx
movl 0x24(%rsp), %eax
cmpl %ecx, %eax
jge 0xdd1be
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0xf0, %rax
movq %rax, 0x18(%rsp)
addq $0xd8, %rdi
callq 0xdfea0
movq %rax, 0xb0(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0xb0(%rsp), %rdi
callq 0xdfed0
movq %rax, 0xb8(%rsp)
leaq 0xc0(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0xdff10
movq 0x18(%rsp), %rdi
movq 0xc0(%rsp), %rsi
callq 0xdfe30
movq %rax, 0xa8(%rsp)
movq 0x78(%rsp), %rdi
movl 0x18c(%rsp), %eax
movl %eax, 0x14(%rsp)
addq $0xf0, %rdi
callq 0xdfe10
movq %rax, %rcx
movl 0x14(%rsp), %eax
cmpl %ecx, %eax
jge 0xdd258
movq 0x78(%rsp), %rdi
movq %rdi, %rax
addq $0xf0, %rax
movq %rax, 0x8(%rsp)
addq $0xf0, %rdi
callq 0xdfea0
movq %rax, 0x90(%rsp)
movslq 0x18c(%rsp), %rsi
leaq 0x90(%rsp), %rdi
callq 0xdfed0
movq %rax, 0x98(%rsp)
leaq 0xa0(%rsp), %rdi
leaq 0x98(%rsp), %rsi
callq 0xdff10
movq 0x8(%rsp), %rdi
movq 0xa0(%rsp), %rsi
callq 0xdfe30
movq %rax, 0x88(%rsp)
addq $0x198, %rsp            # imm = 0x198
retq