I want to sort on multiple fields and have found the answer : How do I sort a list by different parameters at different timed which is what I was looking for.
I want to expand on it and pass a particular variable for specific enums. How can this be achieved? (the purpose of me passing a variable is so I can do a calculation and then sort based on that).