### API

The following subroutines have to be used to declare user's dump subroutine:

- Declare the user's dump routine:

        subroutine class_user_dump(userdump)
          external :: userdump  ! User's 'dump' subroutine

- Get a variable from the data buffer in CLASS:

        subroutine class_user_classtodata(var)
              integer(kind=4),  intent(out) :: var
          OR  real(kind=4),     intent(out) :: var
          OR  real(kind=8),     intent(out) :: var
          OR  character(len=*), intent(out) :: var

The calling sequence of the user's dump routine must be of the following form:

    subroutine mydump(version,error)
      integer(kind=4), intent(in)    :: version  ! The version of the data
      logical,         intent(inout) :: error    ! Logical error flag

The name of this subroutine is free.