Document param match requirement
							parent
							
								
									66f5ba0f49
								
							
						
					
					
						commit
						453491b78d
					
				
							
								
								
									
										12
									
								
								DEVELOP.md
								
								
								
								
							
							
						
						
									
										12
									
								
								DEVELOP.md
								
								
								
								
							|  | @ -1,13 +1,21 @@ | |||
| # Information for Developers | ||||
| 
 | ||||
| ### Coding Conventions | ||||
| ## Coding Conventions | ||||
| 
 | ||||
| * Classes are Uppercase, methods and functions lowerMixedCase. | ||||
| * Apart from those naming conventions, we adopt Google C++ style. | ||||
| * Use meaningful variable names, e.g. `measurement` not `msm`, avoid abbreviations. | ||||
| 
 | ||||
| ### Header-Wrapper Parameter Name Matching | ||||
| 
 | ||||
| ### Windows | ||||
| If you add a C++ function to a `.i` file to expose it to the wrapper, you must ensure that the parameter names match exactly between the declaration in the header file and the declaration in the `.i`. Similarly, if you change any parameter names in a wrapped function in a header file, or change any parameter names in a `.i` file, you must change the corresponding function in the other file to reflect those changes. | ||||
| 
 | ||||
| > [!IMPORTANT] | ||||
| > The Doxygen documentation from the C++ will not carry over into the Python docstring if the parameter names do not match exactly! | ||||
| 
 | ||||
| If you encounter any functions that do not meet this criterion, please submit a PR to make them match. | ||||
| 
 | ||||
| ## Windows | ||||
| 
 | ||||
| On Windows it is necessary to explicitly export all functions from the library which should be externally accessible. To do this, include the macro `GTSAM_EXPORT` in your class or function definition. | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue