[Bf-committers] doxygen updates

Alex Combas bf-committers@blender.org
Sat, 3 Jan 2004 12:47:54 -0800 (PST)


--0-733222894-1073162874=:12911
Content-Type: text/plain; charset=us-ascii
Content-Id: 
Content-Disposition: inline

--- Casey Corn <cmccad@yahoo.com> wrote:
>
> Ton provided a bit of the blender source history,
> and has suggested which
> modules to document first in this e-mail:
> 
>
http://www.blender.org/pipermail/bf-committers/2003-April/002488.html
> 

Hi Casey,

Ok I suppose I should have asked before I started to
demolish and rebuild,
but what ive done is put all of the headerfiles from
all of those areas of the blender source that Ton
mentioned are suitable for documentation into a
Doxygen file.

I have included a list at the bottom of this email of
the files that are now included in the new version of
the Doxyfile which I have renamed to
"blender_doc.config".

You will noticed that I handily pirated this Doxyfile
config from the GHOST project and then bent it up a
little. I did this becuase GHOST is doing it right,
and I think that there is no need to come up with a
new documentation model when we can just follow the
example of the GHOST documentation since it is already
working so well. 
//that is just my opinion! 

I have also included a new doxygen.main file which I
have renamed to "blender_doc.mainpage". This is a
ripoff of the current doxygen.main with a few
adjustments. 

Also included is a readme file "README.doxygen" to
describe how developers can generate the browsable
doxyginated html for themselves, and a patch to put
all of these into the proper places in the blender
source.

..or if that sounds like too much work you can just
download a copy of the html from my website, guzip and
enjoy! I dont have server access or I would just put a
copy of it online, sorry. :)

http://www.geocities.com/yummyfiddlehead/doxy.html

The reason all this was done was to quickly give us a
"current" documentation model based of the files in
the latest CVS, so that we can continue to work on it.

If you choose to generate the html you will notice
that doxygen gives a lot
of warnings, this is because the current state of
source code comments
are a little hairy. The source code comments can
easily be fixed, but I thought it would be best to
just submit these files first, and see and see if they
are commited before I go and start modifying the
actual source code comments.


Hello Blender Developers!

This is a documentation email and so I can already
sence the bile
rising to gorge, but wait! I really dont want to
distract any of you 
from the important work of implementing new features
or sqashing 
bugs. (audible sighs of relief)

However if any of you are working with any of the
following list of 
headers and are feeling rather generous with your time
it would
really appreciated if you throw a little documentation
our way.

IT DOESNT HAVE TO BE MUCH! 
If you just feel like writting two sentences for a
single funtion I would still consider that a valuble
donation to the cause as long as the comment is
correct.

Thanks a lot. Happy Blending.
Alex

ps. I just want to add that there has already been A
LOT of work done to
document blender, If you look through these header
files you will see that 
some of them are _very_ well docuemented already. 
That is just awesome, keep up the stellar work.

Some of these headers dont need to be modified at all,
others contain absolutly zero comments which is pretty
sad. 

I can only do so much writting of actual documentation
personallly so in addition to spending the next little
while fixing up the current code comments so that they
render better in doxy, I will also try to familiarize
myself with the radiosity section so that I can begin
to write documentation for it.

Here is the list! (please let me know If any of these
should be dropped)

IMBUF
../source/blender/imbuf/IMB_imbuf.h
 ../source/blender/imbuf/IMB_imbuf_types.h

RADIOSITY 
../source/blender/radiosity/extern/include/radio.h 
../source/blender/radiosity/extern/include/radio_types.h

GHOST
../intern/ghost/GHOST_C-api.h  
../intern/ghost/GHOST_IEventConsumer.h 
../intern/ghost/GHOST_IEvent.h
 ../intern/ghost/GHOST_ITimerTask.h 
../intern/ghost/GHOST_IWindow.h
 ../intern/ghost/GHOST_Rect.h 
../intern/ghost/GHOST_Types.h

RENDER 
../source/blender/render/extern/include/render.h

../source/blender/render/extern/include/render_types.h

BLENKERNEL 
../source/blender/blenkernel/BKE_action.h
 ../source/blender/blenkernel/BKE_anim.h
 ../source/blender/blenkernel/BKE_armature.h
 ../source/blender/blenkernel/BKE_bad_level_calls.h
 ../source/blender/blenkernel/BKE_blender.h
 ../source/blender/blenkernel/BKE_bmfont.h
 ../source/blender/blenkernel/BKE_booleanops.h
 ../source/blender/blenkernel/BKE_booleanops_mesh.h
 ../source/blender/blenkernel/BKE_constraint.h
 ../source/blender/blenkernel/BKE_curve.h
 ../source/blender/blenkernel/BKE_deform.h
 ../source/blender/blenkernel/BKE_displist.h
 ../source/blender/blenkernel/BKE_effect.h
 ../source/blender/blenkernel/BKE_endian.h
 ../source/blender/blenkernel/BKE_exotic.h
 ../source/blender/blenkernel/BKE_font.h
 ../source/blender/blenkernel/BKE_global.h
 ../source/blender/blenkernel/BKE_group.h
 ../source/blender/blenkernel/BKE_ika.h
 ../source/blender/blenkernel/BKE_image.h
 ../source/blender/blenkernel/BKE_ipo.h
../source/blender/blenkernel/BKE_key.h
 ../source/blender/blenkernel/BKE_lattice.h 
../source/blender/blenkernel/BKE_library.h 
../source/blender/blenkernel/BKE_main.h 
../source/blender/blenkernel/BKE_material.h 
../source/blender/blenkernel/BKE_mball.h 
../source/blender/blenkernel/BKE_mesh.h 
../source/blender/blenkernel/BKE_nla.h 
../source/blender/blenkernel/BKE_object.h 
../source/blender/blenkernel/BKE_osa_types.h 
../source/blender/blenkernel/BKE_packedFile.h 
../source/blender/blenkernel/BKE_plugin_types.h 
../source/blender/blenkernel/BKE_property.h 
../source/blender/blenkernel/BKE_sca.h 
../source/blender/blenkernel/BKE_scene.h 
../source/blender/blenkernel/BKE_screen.h 
../source/blender/blenkernel/BKE_script.h 
../source/blender/blenkernel/BKE_sound.h 
../source/blender/blenkernel/BKE_subsurf.h 
../source/blender/blenkernel/BKE_text.h 
../source/blender/blenkernel/BKE_texture.h 
../source/blender/blenkernel/BKE_utildefines.h 
../source/blender/blenkernel/BKE_world.h 
../source/blender/blenkernel/BKE_writeavi.h 

BLENLOADER
../source/blender/blenloader/BLO_genfile.h 
../source/blender/blenloader/BLO_readfile.h 
../source/blender/blenloader/BLO_soundfile.h 
../source/blender/blenloader/BLO_writefile.h 

BLENLIB
../source/blender/blenlib/BLI_arithb.h 
../source/blender/blenlib/BLI_dynstr.h 
../source/blender/blenlib/BLI_editVert.h 
../source/blender/blenlib/BLI_ghash.h 
../source/blender/blenlib/BLI_gsqueue.h 
../source/blender/blenlib/BLI_linklist.h 
../source/blender/blenlib/BLI_memarena.h 
../source/blender/blenlib/BLI_rand.h 
../source/blender/blenlib/BLI_storage_types.h 
../source/blender/blenlib/BLI_winstuff.h 
../source/blender/blenlib/MTC_matrixops.h 
../source/blender/blenlib/MTC_vectorops.h 
../source/blender/blenlib/PIL_dynlib.h 
../source/blender/blenlib/PIL_time.h 

IMG
../source/blender/img/IMG_Api.h 

INTERN/ACTION
../intern/action/ACT_ActionC-Api.h 
../intern/action/ACT_Action.h 
../intern/action/ACT_ActionStack.h

INTERN/BMFONT
../intern/bmfont/BMF_Api.h 
../intern/bmfont/BMF_Fonts.h 
../intern/bmfont/BMF_Settings.h 

INTERN/CONTAINER
../intern/container/CTR_List.h 
../intern/container/CTR_Map.h 
../intern/container/CTR_TaggedIndex.h
 ../intern/container/CTR_TaggedSetOps.h 
../intern/container/CTR_UHeap.h

INTER/GUARDEDALLOC
 ../intern/guardedalloc/MEM_guardedalloc.h 

INTERN/KEYMAKER
../intern/keymaker/blenkey.h 
../intern/keymaker/key_internal.h 
../intern/keymaker/mt19937int.h 

INTERN/MEMUTIL
../intern/memutil/MEM_NonCopyable.h 
../intern/memutil/MEM_RefCountedC-Api.h 
../intern/memutil/MEM_RefCounted.h 
../intern/memutil/MEM_RefCountPtr.h 
../intern/memutil/MEM_SmartPtr.h 

INTERN/SOUNDSYSTEM
../intern/SoundSystem/SND_C-api.h 
../intern/SoundSystem/SND_CDObject.h 
../intern/SoundSystem/SND_DependKludge.h 
../intern/SoundSystem/SND_DeviceManager.h 
../intern/SoundSystem/SND_IAudioDevice.h 
../intern/SoundSystem/SND_Object.h 
../intern/SoundSystem/SND_Scene.h 
../intern/SoundSystem/SND_SoundListener.h 
../intern/SoundSystem/SND_SoundObject.h 
../intern/SoundSystem/SND_Utils.h 
../intern/SoundSystem/SND_WaveCache.h 
../intern/SoundSystem/SND_WaveSlot.h 
../intern/SoundSystem/SoundDefines.h 

INTERN/STRING
../intern/string/STR_HashedString.h 
../intern/string/STR_String.h

GAMEENGINE

./source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
 
../source/gameengine/BlenderRoutines/KX_BlenderGL.h  
../source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h
 
../source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h
 
../source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h
 
../source/gameengine/BlenderRoutines/KX_BlenderPolyMaterial.h
 
../source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h
 
../source/gameengine/BlenderRoutines/KX_BlenderSystem.h

../source/gameengine/Converter/BL_ActionActuator.h  
../source/gameengine/Converter/BL_ArmatureObject.h  
../source/gameengine/Converter/BL_BlenderDataConversion.h
 
../source/gameengine/Converter/BL_DeformableGameObject.h
 
../source/gameengine/Converter/BlenderWorldInfo.h  
../source/gameengine/Converter/BL_MeshDeformer.h  
../source/gameengine/Converter/BL_SkinDeformer.h  
../source/gameengine/Converter/BL_SkinMeshObject.h  
../source/gameengine/Converter/KX_BlenderScalarInterpolator.h
 
../source/gameengine/Converter/KX_BlenderSceneConverter.h
 
../source/gameengine/Converter/KX_ConvertActuators.h  
../source/gameengine/Converter/KX_ConvertControllers.h
 
../source/gameengine/Converter/KX_ConvertProperties.h 
../source/gameengine/Converter/KX_ConvertSensors.h  
../source/gameengine/Converter/KX_IpoConvert.h 
../source/gameengine/Expressions/BoolValue.h 
../source/gameengine/Expressions/ConstExpr.h 
../source/gameengine/Expressions/EmptyValue.h 
../source/gameengine/Expressions/ErrorValue.h 
../source/gameengine/Expressions/EXP_C-Api.h 
../source/gameengine/Expressions/Expression.h 
../source/gameengine/Expressions/FloatValue.h 
../source/gameengine/Expressions/IdentifierExpr.h 
../source/gameengine/Expressions/IfExpr.h 
../source/gameengine/Expressions/InputParser.h 
../source/gameengine/Expressions/IntValue.h 
../source/gameengine/Expressions/KX_HashedPtr.h 
../source/gameengine/Expressions/KX_Python_dynamic.h 
../source/gameengine/Expressions/KX_Python.h 
../source/gameengine/Expressions/KX_Python_static.h 
../source/gameengine/Expressions/ListValue.h 
../source/gameengine/Expressions/Operator1Expr.h 
../source/gameengine/Expressions/Operator2Expr.h 
../source/gameengine/Expressions/PyObjectPlus.h 
../source/gameengine/Expressions/StringValue.h 
../source/gameengine/Expressions/Value.h 
../source/gameengine/Expressions/VectorValue.h 
../source/gameengine/Expressions/VoidValue.h 
../source/gameengine/GameLogic/SCA_AlwaysEventManager.h

../source/gameengine/GameLogic/SCA_AlwaysSensor.h 
../source/gameengine/GameLogic/SCA_ANDController.h 
../source/gameengine/GameLogic/SCA_EventManager.h 
../source/gameengine/GameLogic/SCA_ExpressionController.h

../source/gameengine/GameLogic/SCA_IActuator.h 
../source/gameengine/GameLogic/SCA_IController.h 
../source/gameengine/GameLogic/SCA_IInputDevice.h 
../source/gameengine/GameLogic/SCA_ILogicBrick.h 
../source/gameengine/GameLogic/SCA_IObject.h 
../source/gameengine/GameLogic/SCA_IScene.h 
../source/gameengine/GameLogic/SCA_KeyboardManager.h 
../source/gameengine/GameLogic/SCA_KeyboardSensor.h 
../source/gameengine/GameLogic/SCA_LogicManager.h 
../source/gameengine/GameLogic/SCA_MouseManager.h 
../source/gameengine/GameLogic/SCA_MouseSensor.h 
../source/gameengine/GameLogic/SCA_ORController.h 
../source/gameengine/GameLogic/SCA_PropertyActuator.h 
../source/gameengine/GameLogic/SCA_PropertyEventManager.h

../source/gameengine/GameLogic/SCA_PropertySensor.h 
../source/gameengine/GameLogic/SCA_PythonController.h 
../source/gameengine/GameLogic/SCA_RandomActuator.h 
../source/gameengine/GameLogic/SCA_RandomEventManager.h

../source/gameengine/GameLogic/SCA_RandomNumberGenerator.h

../source/gameengine/GameLogic/SCA_RandomSensor.h 
../source/gameengine/GameLogic/SCA_TimeEventManager.h 
../source/gameengine/Ketsji/KX_CameraActuator.h 
../source/gameengine/Ketsji/KX_Camera.h 
../source/gameengine/Ketsji/KX_CameraIpoSGController.h

../source/gameengine/Ketsji/KX_CDActuator.h 
../source/gameengine/Ketsji/KX_ClientObjectInfo.h 
../source/gameengine/Ketsji/KX_ConstraintActuator.h 
../source/gameengine/Ketsji/KX_ConstraintWrapper.h 
../source/gameengine/Ketsji/KX_ConvertPhysicsObject.h 
../source/gameengine/Ketsji/KX_EmptyObject.h 
../source/gameengine/Ketsji/KX_GameActuator.h 
../source/gameengine/Ketsji/KX_GameObject.h 
../source/gameengine/Ketsji/KX_IInterpolator.h 
../source/gameengine/Ketsji/KX_IPhysicsController.h 
../source/gameengine/Ketsji/KX_IpoActuator.h 
../source/gameengine/Ketsji/KX_IPO_SGController.h 
../source/gameengine/Ketsji/KX_IPOTransform.h 
../source/gameengine/Ketsji/KX_IScalarInterpolator.h 
../source/gameengine/Ketsji/KX_ISceneConverter.h 
../source/gameengine/Ketsji/KX_ISystem.h 
../source/gameengine/Ketsji/KX_KetsjiEngine.h 
../source/gameengine/Ketsji/KX_Light.h 
../source/gameengine/Ketsji/KX_LightIpoSGController.h 
../source/gameengine/Ketsji/KX_MeshProxy.h 
../source/gameengine/Ketsji/KX_MotionState.h 
../source/gameengine/Ketsji/KX_MouseFocusSensor.h 
../source/gameengine/Ketsji/KX_NearSensor.h 
../source/gameengine/Ketsji/KX_ObColorIpoSGController.h

../source/gameengine/Ketsji/KX_ObjectActuator.h 
../source/gameengine/Ketsji/KX_OdePhysicsController.h 
../source/gameengine/Ketsji/KX_OrientationInterpolator.h

../source/gameengine/Ketsji/KX_PhysicsEngineEnums.h 
../source/gameengine/Ketsji/KX_PhysicsObjectWrapper.h 
../source/gameengine/Ketsji/KX_PhysicsPropertiesobsolete.h

../source/gameengine/Ketsji/KX_PositionInterpolator.h 
../source/gameengine/Ketsji/KX_PyConstraintBinding.h 
../source/gameengine/Ketsji/KX_PythonInit.h 
../source/gameengine/Ketsji/KX_RadarSensor.h 
../source/gameengine/Ketsji/KX_RayEventManager.h 
../source/gameengine/Ketsji/KX_RaySensor.h 
../source/gameengine/Ketsji/KX_SCA_AddObjectActuator.h

../source/gameengine/Ketsji/KX_SCA_EndObjectActuator.h

../source/gameengine/Ketsji/KX_ScalarInterpolator.h 
../source/gameengine/Ketsji/KX_ScalingInterpolator.h 
../source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.h

../source/gameengine/Ketsji/KX_SceneActuator.h 
../source/gameengine/Ketsji/KX_Scene.h 
../source/gameengine/Ketsji/KX_SG_NodeRelationships.h 
../source/gameengine/Ketsji/KX_SoundActuator.h 
../source/gameengine/Ketsji/KX_SumoPhysicsController.h

../source/gameengine/Ketsji/KX_TimeCategoryLogger.h 
../source/gameengine/Ketsji/KX_TouchEventManager.h 
../source/gameengine/Ketsji/KX_TouchSensor.h 
../source/gameengine/Ketsji/KX_TrackToActuator.h 
../source/gameengine/Ketsji/KX_VertexProxy.h 
../source/gameengine/Ketsji/KX_VisibilityActuator.h 
../source/gameengine/Ketsji/KX_WorldInfo.h 
../source/gameengine/Ketsji/KX_WorldIpoController.h 
../source/gameengine/Network/NG_NetworkMessage.h 
../source/gameengine/Network/NG_NetworkScene.h 
../source/gameengine/Network/NG_NetworkDeviceInterface.h

../source/gameengine/Network/NG_NetworkObject.h 
../source/gameengine/SceneGraph/SG_Controller.h 
../source/gameengine/SceneGraph/SG_IObject.h 
../source/gameengine/SceneGraph/SG_Node.h 
../source/gameengine/SceneGraph/SG_ParentRelation.h 
../source/gameengine/SceneGraph/SG_Spatial.h 
../source/gameengine/Rasterizer/RAS_BucketManager.h 
../source/gameengine/Rasterizer/RAS_CameraData.h 
../source/gameengine/Rasterizer/RAS_Deformer.h 
../source/gameengine/Rasterizer/RAS_FramingManager.h 
../source/gameengine/Rasterizer/RAS_ICanvas.h 
../source/gameengine/Rasterizer/RAS_IPolygonMaterial.h

../source/gameengine/Rasterizer/RAS_IRasterizer.h 
../source/gameengine/Rasterizer/RAS_IRenderTools.h 
../source/gameengine/Rasterizer/RAS_LightObject.h 
../source/gameengine/Rasterizer/RAS_MaterialBucket.h 
../source/gameengine/Rasterizer/RAS_MeshObject.h 
../source/gameengine/Rasterizer/RAS_ObjectColor.h 
../source/gameengine/Rasterizer/RAS_Polygon.h 
../source/gameengine/Rasterizer/RAS_Rect.h 
../source/gameengine/Rasterizer/RAS_TexMatrix.h 
../source/gameengine/Rasterizer/RAS_TexVert.h 

__________________________________
Do you Yahoo!?
Free Pop-Up Blocker - Get it now
http://companion.yahoo.com/
--0-733222894-1073162874=:12911
Content-Type: application/x-gzip; name="doxy_updates.tar.gz"
Content-Transfer-Encoding: base64
Content-Description: doxy_updates.tar.gz
Content-Disposition: attachment; filename="doxy_updates.tar.gz"

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

--0-733222894-1073162874=:12911--