# This file was generated by fedex_python.  You probably don't want to edit
# it since your modifications will be lost if fedex_plus is used to
# regenerate it.
import sys

from SCL.SCLBase import *
from SCL.SimpleDataTypes import *
from SCL.ConstructedDataTypes import *
from SCL.AggregationDataTypes import *
from SCL.TypeChecker import check_type
from SCL.Builtin import *
from SCL.Rules import *

schema_name = 'test_array_of_array_of_simple_types'

schema_scope = sys.modules[__name__]


####################
 # ENTITY transformation #
####################
class transformation(BaseEntityClass):
	'''Entity transformation definition.

	:param rotation
	:type rotation:ARRAY(1,3,ARRAY(1,3,'REAL', scope = schema_scope))
	'''
	def __init__( self , rotation, ):
		self.rotation = rotation

	@apply
	def rotation():
		def fget( self ):
			return self._rotation
		def fset( self, value ):
		# Mandatory argument
			if value==None:
				raise AssertionError('Argument rotation is mantatory and can not be set to None')
			if not check_type(value,ARRAY(1,3,ARRAY(1,3,'REAL', scope = schema_scope))):
				self._rotation = ARRAY(value)
			else:
				self._rotation = value
		return property(**locals())
