If that is even possible……
Assuming you are reading in poitclouds and want to make hillshades - using the ArcGIS hillshade_3D function - out of them.
So you read the poitclouds make the raster with a DEMGenerator.
Now you want to call the ESRI hillshade function (and other functions) with a PythonCaller using arcpy.
But first you have to save the raster on disk, so ESRI can access it by reading it in again.
In Python arcpy you can use the ESRI in_memory workspace:
env.workspace = r"in_memory"
env.overwriteOutput = True
inRaster = FME_MacroValues['inRaster']
inRemapFile = FME_MacroValues['inRemapFile']
arcpy.HillShade_3d(inRaster,"TMPRaster", azimuth, altitude, modelShadows, zFactor)
OutRaster = ReclassByASCIIFile("TMPRaster",inRemapFile)
OutRaster.save(FME_MacroValues['OutRaster'])
arcpy.Delete_management("in_memory")
The raster comes to the PythonCaller as an FME object.
So instead of reading the raster from disk again, it wold be great,
if you can write the raster (or any other point, line or polygon Feature)
directly into the “memory workspace” of ESRI.
With a parameter – lest say selfdistruction Yes, or No – you can copy the feature into the memory workspace,
or move it there and delete the FME object from memory.
After the ESRI functions you can read the object back from the ESRI memory into the FME memory
and the translation continues in FME with some tiling or reasampling the raster and writes the rasters finally to disk.