def object_data_add(context: 'bpy.types.Context', obdata: 'bpy.data',
    operator: 'bpy.types.Operator'=None, use_active_layer=True, name: str=None
    ) ->'bpy.types.ObjectBase':
    """Add an object using the view context and preference to to initialize the location, rotation and layer. 

    :param context: The context to use. 
    :type context: 'bpy.types.Context'
    :param obdata: the data used for the new object. 
    :type obdata: 'bpy.data'
    :param operator: The operator, checked for location and rotation properties. 
    :type operator: 'bpy.types.Operator'
    :param name: Optional name 
    :type name: str
    :return:  the newly created object in the scene. 
    """
    pass
