module CShoe
    use SimulationVariables
    use json_module

    implicit none    
    public    
    contains

    subroutine ShoeToJson(parent)

        type(json_value),pointer :: parent
        type(json_core) :: json
        type(json_value),pointer :: p

        ! 1. create new node
        call json%create_object(p,'Shoe')
        
        ! 2. add member of data type to new node
        call json%add(p,"Breakdown",data%Configuration%Shoe%Breakdown)
        call json%add(p,"FormationNo",data%Configuration%Shoe%FormationNo)
        call json%add(p,"FracturePropagation",data%Configuration%Shoe%FracturePropagation)
        call json%add(p,"InactiveFracture",data%Configuration%Shoe%InactiveFracture)
        call json%add(p,"LeakOff",data%Configuration%Shoe%LeakOff)
        call json%add(p,"ShoeDepth",data%Configuration%Shoe%ShoeDepth)

        ! 3. add new node to parent
        call json%add(parent,p)
    end subroutine

end module CShoe