<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_axis_value_discrete(self, axis):
 		"""Return the axis value in discrete steps for a given axis event. 		How a value translates into a discrete step depends on the source. 		If the source is :attr:`~libinput.constant.PointerAxisSource.WHEEL`, 		the discrete value correspond to the number of physical mouse wheel 		clicks. 		If the source is :attr:`~libinput.constant.PointerAxisSource.CONTINUOUS` 		or :attr:`~libinput.constant.PointerAxisSource.FINGER`, the discrete 		value is always 0. 		Args: 			axis (~libinput.constant.PointerAxis):
 The axis who's value to get. 		Returns: 			float: The discrete value for the given event. 		Raises: 			AttributeError 		"""


		if self.type != EventType.POINTER_AXIS:
			raise AttributeError(_wrong_meth.format(self.type))
		return self._libinput.libinput_event_pointer_get_axis_value_discrete(
			self._handle, axis)