a true "in-place" filter overwrites each pixel of the input buffer with the resultant output pixel value and then passes the input buffer as its output. All filters capable of this should inherit from itk::InPlaceImageFilter (if you find one that doesn't, please let us know). You to turn on/off this functionality eg. filter->InPlaceOn(), filter->InPlaceOff(). The itk::MeanImageFilter does not inherit from itk::InPlaceImageFilter, the reason being it is a neighbourhood operation; neighbourhood operations *cannot* be run in-place (the output for one pixel may be used as the input for another pixel!).
https://itk.org/pipermail/insight-users/2010-October/038501.html