CptrWrapper Derived Type

type, public, abstract :: CptrWrapper


Inherits

type~~cptrwrapper~~InheritsGraph type~cptrwrapper CptrWrapper c_ptr c_ptr type~cptrwrapper->c_ptr cptr_

Inherited by

type~~cptrwrapper~~InheritedByGraph type~cptrwrapper CptrWrapper type~converter Converter type~converter->type~cptrwrapper type~udsystem UDSystem type~udsystem->type~cptrwrapper type~udunit UDUnit type~udunit->type~cptrwrapper type~convertunitsaction ConvertUnitsAction type~convertunitsaction->type~converter converter

Type-Bound Procedures

procedure, public :: free

  • private subroutine free(this)

    Arguments

    Type IntentOptional Attributes Name
    class(CptrWrapper), intent(inout) :: this

procedure(I_free_memory), public, deferred :: free_memory

  • subroutine I_free_memory(this) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(CptrWrapper), intent(in) :: this

procedure, public :: get_cptr

  • private function get_cptr(this)

    Arguments

    Type IntentOptional Attributes Name
    class(CptrWrapper), intent(in) :: this

    Return Value type(c_ptr)

procedure, public :: is_free

  • private function is_free(this)

    Arguments

    Type IntentOptional Attributes Name
    class(CptrWrapper), intent(in) :: this

    Return Value logical

procedure, public :: set_cptr

  • private subroutine set_cptr(this, cptr)

    Arguments

    Type IntentOptional Attributes Name
    class(CptrWrapper), intent(inout) :: this
    type(c_ptr), intent(in) :: cptr

Source Code

   type, abstract :: CptrWrapper
      private
      type(c_ptr) :: cptr_ = C_NULL_PTR
   contains
      procedure :: get_cptr
      procedure :: set_cptr
      procedure :: is_free
      procedure :: free
      procedure(I_free_memory), deferred :: free_memory
   end type CptrWrapper