You could detect linedefs in regards to player location, but that could be slow. Halfpipe Utils does it by detecting forward momentum vs vertical momentum.
A much bigger problem is that you wouldn't be able to tell if the player is in a launch or run state when touching a wall, because the player only has one angle dimension, and whenever the player is above the floor after previously being on it, and is not jumping, the game registers that as a slope launch.