// File: /workspace/github_cpp_makefile_star2_O1/marcellapantarotto[P]pseudoSO/scheduler.cpp
// Function: Scheduler::displayExecution(Process)
void Scheduler::displayExecution(Process p) {
	cout << "\n  Process " << p.getPID() << " => " << endl;
	cout << "\tPriority: " << p.getPriority() << endl;
	cout << "\tTime Since Arrival: " << clock - p.getInitTime() << endl;
	cout << "\tTime Left To Execute: " << p.getExecutionTime() << endl;
	cout << "\tHolds Any Resources: ";

	switch(p.getBlockedResource()) {
		case WITHOUT_RESOURCES:
			cout << "No";
			break;
		case PRINTER:
			cout << "Printer";
			break;
		case SCANNER:
			cout << "Scanner";
			break;
		case SATA:
			cout << "Sata";
			break;
		case MODEM:
			cout << "Modem";
			break;
	}
	cout << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq %rdi, %r15
movq 0x4705(%rip), %rbx      # 0x7fd0
leaq 0x18ca(%rip), %rsi      # 0x519c
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2180
leaq 0x10(%rbp), %r14
movq %r14, %rdi
callq 0x2b4a
movq %rbx, %rdi
movl %eax, %esi
callq 0x2220
movq %rax, %r12
leaq 0x18a9(%rip), %rsi      # 0x51a8
movl $0x4, %edx
movq %rax, %rdi
callq 0x2180
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2160
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1714(%rip), %rsi      # 0x504f
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2180
movq %r14, %rdi
callq 0x2b52
movq %rbx, %rdi
movl %eax, %esi
callq 0x2220
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2160
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1822(%rip), %rsi      # 0x51ad
movl $0x15, %edx
movq %rbx, %rdi
callq 0x2180
movl (%r15), %r15d
movq %r14, %rdi
callq 0x2b6a
subl %eax, %r15d
movq %rbx, %rdi
movl %r15d, %esi
callq 0x2220
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2160
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x17e1(%rip), %rsi      # 0x51c3
movl $0x17, %edx
movq %rbx, %rdi
callq 0x2180
movq %r14, %rdi
callq 0x2b72
movq %rbx, %rdi
movl %eax, %esi
callq 0x2220
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2160
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x17a9(%rip), %rsi      # 0x51db
movl $0x16, %edx
movq %rbx, %rdi
callq 0x2180
movq %r14, %rdi
callq 0x2ba2
cmpl $0x4, %eax
ja 0x3ac5
movl %eax, %eax
leaq 0x168b(%rip), %rcx      # 0x50e0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x456b(%rip), %rdi      # 0x7fd0
leaq 0x1786(%rip), %rsi      # 0x51f2
movl $0x2, %edx
jmp 0x3ac0
movq 0x4556(%rip), %rdi      # 0x7fd0
leaq 0x1789(%rip), %rsi      # 0x520a
movl $0x5, %edx
jmp 0x3ac0
movq 0x4541(%rip), %rdi      # 0x7fd0
leaq 0x1767(%rip), %rsi      # 0x51fd
jmp 0x3aa6
movq 0x4531(%rip), %rdi      # 0x7fd0
leaq 0x174f(%rip), %rsi      # 0x51f5
movl $0x7, %edx
jmp 0x3ac0
movq 0x451c(%rip), %rdi      # 0x7fd0
leaq 0x174a(%rip), %rsi      # 0x5205
movl $0x4, %edx
callq 0x2180
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2160
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
nop