Previous topic

stalker.core.models.project

Next topic

stalker.core.models.repository

This Page

stalker.core.models.project.Project

Inheritance diagram of stalker.core.models.project.Project

class stalker.core.models.project.Project(start_date=datetime.date(2011, 2, 10), due_date=datetime.timedelta(10), lead=None, users=[], repository=None, type=None, structure=None, sequences=[], assets=[], image_format=None, fps=25.0, is_stereoscopic=False, display_width=1.0, status_list=None, status=0, references=[], **kwargs)[source]

Bases: stalker.core.models.entity.Entity, stalker.core.models.mixin.ReferenceMixin, stalker.core.models.mixin.StatusMixin

All the information about a Project in Stalker is hold in this class.

Project is one of the main classes that will direct the others. A project in Stalker is a gathering point.

The date attributes like start_date and due_date can be managed with timezones. Follow the Python idioms shown in the help files of datetime

It is mixed with ReferenceMixin and StatusMixin to give reference and status abilities.

Parameters:
  • start_date – the start date of the project, should be a datetime.date instance, when given as None or tried to be set to None, it is to set to today, setting the start date also effects due date, if the new start_date passes the due_date the due_date is also changed to a date to keep the timedelta between dates. The default value is datetime.date.today()
  • due_date – the due_date of the project, should be a datetime.date or datetime.timedelta instance, if given as a datetime.timedelta, then it will be converted to date by adding the timedelta to the start_date attribute, when the start_date is changed to a date passing the due_date, then the due_date is also changed to a later date so the timedelta is kept between the dates. The default value is 10 days given as datetime.timedelta
  • lead – the lead of the project, should be an instance of User, can be skipped
  • users – the users assigned to this project, should be a list of User instances, if set to None it is converted to an empty list.
  • sequences – the sequences of the project, it should be a list of Sequence instances, the default value is an empty list
  • assets – the assets used in this project, it should be a list of Asset instances, the default value is an empty list
  • image_format – the output image format of the project, it should be an instance of ImageFormat, can not be skipped in init
  • fps – the FPS of the project, it should be a integer or float number, or a string literal which can be correctly converted to a float, the default value is 25.0.
  • type – the type of the project, it should be an instance of ProjectType, can not be skipped in init
  • structure – the structure of the project, it should be an instance of Structure.
  • repository – the repository that the project files are going to be stored in, it should be an instance of Reporsitory
  • is_stereoscopic – a bool value (True or False), showing if the project is going to be a stereo 3D project, default value is False, anything given as the argument will be converted to True or False.
  • display_width – the width of the display that the output of the project is going to be displayed (very unnecessary if you are not using stereo 3D setup). Should be an int or float value, negative values converted to the positive values, default value is 1.
__init__(start_date=datetime.date(2011, 2, 10), due_date=datetime.timedelta(10), lead=None, users=[], repository=None, type=None, structure=None, sequences=[], assets=[], image_format=None, fps=25.0, is_stereoscopic=False, display_width=1.0, status_list=None, status=0, references=[], **kwargs)[source]

Methods

__init__(2, **kwargs[, start_date, ...])

Attributes

assets the list of assets created in this project
code
created_by gets and sets the User object who has created this
date_created gets and sets the datetime.datetime object which shows when
date_updated gets and sets the datetime.datetime object which shows when
description the description of the entity
display_width the target display width that this project is going to be
due_date The date that the project should be delivered, can be set to a datetime.timedelta and in this case it will be calculated as an offset from the start_date and converted to datetime.date again.
fps the fps of the project, it is a float value, any other types
image_format the image format of the current project. This value defines
is_stereoscopic True if the project is a stereoscopic project
lead the lead of the project, should be an instance of
name the name of the entity
nice_name this is the nice name of the SimpleEntity. It has the same
notes all the notes about this entity, it should be a list of Notes
references references are lists containing
repository the repository that this project should reside, should be an
sequences the sequences contained in this project, should be a list
start_date The date that this project should start.
status this is the property that sets and returns the status
status_list this is the property that sets and returns the status_list
structure The structure of the project.
tags a list of Tag objects which shows the related tags to the
type defines the type of the project, should be an instance of
updated_by gets and sets the User object who has updated this
users the users assigned to this project. Should be a list of
status_list

this is the property that sets and returns the status_list attribute

status

this is the property that sets and returns the status attribute

references

references are lists containing Link objects

assets[source]

the list of assets created in this project

display_width[source]

the target display width that this project is going to be displayed on, meaningfull if this project is a stereoscopic project

due_date[source]

The date that the project should be delivered, can be set to a datetime.timedelta and in this case it will be calculated as an offset from the start_date and converted to datetime.date again. Setting the start_date to a date passing the due_date will also set the due_date so the timedelta between them is preserved, default value is 10 days

fps[source]

the fps of the project, it is a float value, any other types will be converted to float. The default value is 25.0

image_format[source]

the image format of the current project. This value defines the output image format of the project, should be an instance of ImageFormat, can not be skipped

is_stereoscopic[source]

True if the project is a stereoscopic project

lead[source]

the lead of the project, should be an instance of User, also can set to None

created_by

gets and sets the User object who has created this AuditEntity

date_created

gets and sets the datetime.datetime object which shows when this object has been created

date_updated

gets and sets the datetime.datetime object which shows when this object has been updated

description

the description of the entity

name

the name of the entity

nice_name

this is the nice name of the SimpleEntity. It has the same value with the name (contextually) but with a different format like, all the whitespaces replaced by underscores (“_”), all the CamelCase form will be expanded by underscore (_) characters and it is always lowercase.

There is also the code attribute which is simple the uppercase form of nice_name if it is not defined differently (i.e set to another value).

notes

all the notes about this entity, it should be a list of Notes objects or an empty list, None is not accepted

tags

a list of Tag objects which shows the related tags to the entity

updated_by

gets and sets the User object who has updated this AuditEntity

repository[source]

the repository that this project should reside, should be an instance of Repository, can not be skipped

sequences[source]

the sequences contained in this project, should be a list containing all of Sequence instances, when set to None it is converted to an empty list

start_date[source]

The date that this project should start. Also effects the due_date in certain conditions, if the start_date is set to a time passing the due_date it will also offset the due_date to keep the time difference between the start_date and due_date. start_date should be an instance of datetime.date and the default value is datetime.date.today()

structure[source]

The structure of the project. Should be an instance of Structure class

type[source]

defines the type of the project, should be an instance of ProjectType

users[source]

the users assigned to this project. Should be a list of User instances. Can be and empty list, and when set to None it will be converted to an empty list