In a bowl work the butter to a creamy consistency then add the sugar, vanilla, egg yolks and salt.
Put 150g white chocolate in a bowl on top of a pan with simmering water (ensure that the bottom of the bowl does not touch the water and that the bowl is larger than the pan so steam can't escape). When the white chocolate has melted, add the flour and the crushed pistachios. Stir well.
Tip the white chocolate mixture into the bowl with the butter-egg yolk mixture. Stir it well. Add a little milk if you find that the mixture is on the dry side.
Beat the egg whites to a very firm consistency then incorporate them gently to the mixture. Transfer the mixture to a greased and floured 20cm round cake tin.
Bake for 60 minutes in the lower rack of a pre-heated oven at 160 C / Gas 3.
Whilst the cake is baking make the topping by melting the white and dark chocolate on a very low heat with 70ml of whipping cream.
Take the cake out of the oven and test it with a skewer to check if it is done. Spread the chocolate all over the cake and sprinkle the pistachios on top and all around the edges.
Beat the remaining cream with an electric whisk and with a piping bag decorate the cake.