Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

PythonCodingConventions

Ben Toogood edited this page Jun 13, 2013 · 2 revisions

Python Coding Conventions

This simple class demonstrates the python coding conventions for Cortex. If this class were part of a Cortex python module, it would be stored in a file called "Logging.py" to match the name of the class that it defines.

Python Files (.py)

import os, sys
import traceback

import IECore


class Logging :
	
	LogLevel = IECore.Enum.Create( "NoLog", "Info", "Warning", "Error", "Debug", "VerboseDebug" )
	
	def __init__( self ) :
	
		# private members and methods use the "__" prefix
		self.__level = Logging.LogLevel.NoLog
		
		# protected members and methods use the "_" prefix
		self._initialized = True
		
		# public members and methods do not use a prefix
		self.previousLogLevel = None
	
	## This is the method description. As with C++, methods and arguments have lowerCamelCase names
	# and do not include under_scores.
	def logMessage( self, someLevel, msg ) :
	
		if ( someLevel > self.__level ) :
			## \todo This is how to mark changes that need to take place at some point
			# in the future. Do not commit test/broken code that is commented out. Instead
			# leave it out and add a todo.
			sys.stderr.write( msg )
	
	def setLogLevel( self, level ) :
		
		self.previousLogLevel = self.__level
		self.__level = level
		
	def getLogLevel( self ) :
	
		return self.__level

Clone this wiki locally

Morty Proxy This is a proxified and sanitized view of the page, visit original site.