-- ######################################################################
-- ##
-- ##          DEFINITION FILE OF NOTES TYPES AND CATEGORIES 
-- ##          filename : templateann.aty
-- ##          revision : 4.1
-- ##
-- ######################################################################
-- ##
-- ## rev 4.1 : J. Kirsch 18/09/2015
-- ##   - added revision numeber
-- ##   - added modification log
-- ##   - added resolution annotations to be complient with 7PE_0085-4.x
-- ##   - default OperatorKind set to TBD
-- ##   - replace "created by" with "modified by"
-- ##   - replace "CR" by "PR" 
-- ##   - replace "NA" by "TBD" 
-- ##
-- ##
-- ######################################################################



-- ######################################################################
-- ##
-- ##  DEFINITION OF NOTES TYPES
-- ##
-- ######################################################################

Notes-Types { ZSSM }  DEFINITIONS ::=

BEGIN


-- ZSSM DEFINITION
Comment_Package ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Description TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 10,
				NT_FIELD_WIDTH 60},

			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }


Comment_SM ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Description TEXT {
				NT_DEFAULT_VALUE "-",
				NT_FIELD_HEIGHT 10,
				NT_FIELD_WIDTH 60},

			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Comment_State ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Description TEXT {
				NT_DEFAULT_VALUE "-",
				NT_FIELD_HEIGHT 10,
				NT_FIELD_WIDTH 60},

			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Comment_Default ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Description TEXT {
				NT_DEFAULT_VALUE "-",
				NT_FIELD_HEIGHT 10,
				NT_FIELD_WIDTH 60},

			to_c BOOLEAN {
				NT_DEFAULT_VALUE F,
				NT_PRINTABLE F}
} } }

Comment ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Comment TEXT {
				NT_DEFAULT_VALUE "",
				NT_FIELD_HEIGHT 3,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Unit ::=
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Unit TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 1,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Range ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Range TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 1,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Resolution ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Resolution TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 1,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Min ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Min TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 1,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

Max ::= 
	SEQUENCE OF { 
	SEQUENCE {
		annot_object OID,
		name STRING,
		information {
			Max TEXT {
				NT_DEFAULT_VALUE "TBD",
				NT_FIELD_HEIGHT 1,
				NT_FIELD_WIDTH 60},
			to_c BOOLEAN {
				NT_DEFAULT_VALUE T,
				NT_PRINTABLE F}
} } }

OperatorKind ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		information { 
			OperatorKind ENUM { 
                                NT_ENUM_VALUES {
		                        "Architecture",
		                        "Functional",
                                        "Refinement",
                                        "Library",
                                        "Derived",
                                        "Robustness",
                                        "TBD"},
				NT_DEFAULT_VALUE "TBD", 
				NT_INCRUSTABLE 		T
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }

-- #################################
-- Graphical information for cartouche
-- ZSSM DEFINITION
-- #################################
Title ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
                        NT_LOCATION	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_MODIFY	BOOLEAN { NT_DEFAULT_VALUE F	},
			NT_FRAME	BOOLEAN { NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH 	INTEGER	{ NT_DEFAULT_VALUE 350	},
			NT_FRAME_HEIGHT INTEGER	{ NT_DEFAULT_VALUE 20	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
		},
		information { 
			Title TEXT { 
				NT_DEFAULT_VALUE 	"Title : ",
				NT_INCRUSTABLE 		T
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }

Author ::=
        SEQUENCE OF {
        SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
                        NT_LOCATION	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 20	},
			NT_MODIFY	BOOLEAN { NT_DEFAULT_VALUE F	},
			NT_FRAME	BOOLEAN { NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH 	INTEGER	{ NT_DEFAULT_VALUE 250	},
			NT_FRAME_HEIGHT INTEGER	{ NT_DEFAULT_VALUE 20	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
		},
		information { 
			Author TEXT { 
				NT_DEFAULT_VALUE	" Modified by: AP. PORTE",
				NT_INCRUSTABLE		T
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }

Date ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
                        NT_LOCATION   	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 250	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 20	},
			NT_MODIFY	BOOLEAN	{ NT_DEFAULT_VALUE F	},
			NT_FRAME	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH	INTEGER	{ NT_DEFAULT_VALUE 100	},
			NT_FRAME_HEIGHT	INTEGER	{ NT_DEFAULT_VALUE 20	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
		},
		information { 
			Date DATE { 
				NT_DEFAULT_VALUE 	"dd/mm/yyyy",
				NT_INCRUSTABLE		T
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }

CopyRight ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
                        NT_LOCATION   	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 40	},
			NT_MODIFY	BOOLEAN	{ NT_DEFAULT_VALUE F	},
			NT_FRAME	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH	INTEGER	{ NT_DEFAULT_VALUE 350	},
			NT_FRAME_HEIGHT	INTEGER	{ NT_DEFAULT_VALUE 21	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	},
		},
		information { 
			CopyRight TEXT { 
				NT_DEFAULT_VALUE 	" (C) ZSSM. All rights reserved.", 
				NT_INCRUSTABLE 		T,
				NT_EDITABLE		F
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }


Description ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
                        NT_LOCATION   	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 350	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_MODIFY	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH	INTEGER	{ NT_DEFAULT_VALUE 400	},
			NT_FRAME_HEIGHT	INTEGER	{ NT_DEFAULT_VALUE 120	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
		},
		information { 
			Description TEXT { 
				NT_DEFAULT_VALUE	" Description: ",
				NT_INCRUSTABLE		T
			},
			to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }

Change ::=
	SEQUENCE OF {
	SEQUENCE {
		annot_object OID,
		name STRING,
		note_graphical_information {
			NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_PERMANENT	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_LOCATION   	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
			NT_POS_X	REAL	{ NT_DEFAULT_VALUE 00	},
			NT_POS_Y	REAL	{ NT_DEFAULT_VALUE 60	},
			NT_MODIFY	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME	BOOLEAN	{ NT_DEFAULT_VALUE T	},
			NT_FRAME_WIDTH	INTEGER	{ NT_DEFAULT_VALUE 350	},
			NT_FRAME_HEIGHT	INTEGER	{ NT_DEFAULT_VALUE 60	},
			NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
		},
		information { 
			Change TEXT {
				NT_DEFAULT_VALUE	" PR: First issue - No change.",
				NT_INCRUSTABLE		T
			},
		to_c BOOLEAN { NT_DEFAULT_VALUE true}
} } }


-- #################################
-- Graphical informations
-- #################################
Comment_Graphical ::= 
    SEQUENCE OF { 
	SEQUENCE {
	    annot_object OID,
	    name STRING,
	    note_graphical_information {
		NT_INCRUSTABLE	BOOLEAN	{ NT_DEFAULT_VALUE T	},
		NT_PERMANENT	BOOLEAN { NT_DEFAULT_VALUE T	},
                NT_MODIFY   	BOOLEAN { NT_DEFAULT_VALUE T	},
                NT_LOCATION   	STRING	{ NT_DEFAULT_VALUE "RELATIVE"},
		NT_POS_X 	REAL	{ NT_DEFAULT_VALUE 350	},
		NT_POS_Y 	REAL	{ NT_DEFAULT_VALUE 350	},
                NT_CENTERING_CENTER 	BOOLEAN	{ NT_DEFAULT_VALUE T	},
		NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
	    },
	    information { 
                Comment_Graphical TEXT	{ NT_INCRUSTABLE T	},
                to_c BOOLEAN 	{ NT_DEFAULT_VALUE true	}
} } }


-- #################################
-- Graphical informations : may be displayed or not (View/Display notes).
-- #################################

Comment_HiddenGraphical ::= 
    SEQUENCE OF { 
	SEQUENCE {
	    annot_object OID,
	    name STRING,
	    note_graphical_information {
		NT_INCRUSTABLE	BOOLEAN { NT_DEFAULT_VALUE T	},
		NT_PERMANENT	BOOLEAN { NT_DEFAULT_VALUE F	},
                NT_MODIFY   	BOOLEAN { NT_DEFAULT_VALUE T	},
                NT_LOCATION   	STRING 	{ NT_DEFAULT_VALUE "RELATIVE"},
		NT_POS_X 	REAL 	{ NT_DEFAULT_VALUE -1	},
		NT_POS_Y 	REAL 	{ NT_DEFAULT_VALUE -1	},
		NT_FONT		INTEGER	{ NT_DEFAULT_VALUE 1	}
	    },
	    information { 
                Comment_HiddenGraphical TEXT	{ NT_INCRUSTABLE T	},
                to_c BOOLEAN 	{ NT_DEFAULT_VALUE true	}
} } }

END

-- #################################
-- End of the Definition of the Types of Notes
-- #################################

-- ######################################################################
-- ##
-- ##  DEFINITION OF DIFFERENT CATEGORIES OF NOTE TYPES 
-- ##
-- ######################################################################


Annotation-Rules { Esterel-Technologies }  DEFINITIONS ::=
BEGIN

-- #################################
-- ## Categories associated to entities out from net views
-- #################################
package ::= {
	{Comment_Package T 1 1}
}

constant ::= {
	{ Comment T 1 1 },
	{ Unit    T 1 1 }
}

-- #################################
sensor ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

named_type ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

-- #################################

output ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

input ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

hidden ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

probe ::= {
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}

-- ## Title to Change required only for imported nodes
operator ::= {
	{ OperatorKind T 1 1 }
	{ Title        F 0 1 },
	{ Author       F 0 1 },
	{ Date         F 0 1 },
	{ CopyRight    F 0 1 },
	{ Description  F 0 1 },
	{ Change       F 0 1 }
}

-- ## Unit and range not mandatory for a structured field
type_element ::={
	{ Comment    T 1 1 },
	{ Unit       T 1 1 },
	{ Range      T 0 1 },
	{ Resolution T 0 1 },
	{ Min        F 0 1 },
	{ Max        F 0 1 }
}
-- #################################
-- ## Categories associated to entities of the net views
-- #################################


-- #################################
state_machine ::= {
        { Comment_SM                    T 1 1 },
        { Comment_Graphical       	F 0 99},
        { Comment_HiddenGraphical 	F 0 99}
}
-- #################################
state ::= {
	{ Comment_State                 T 1 1 },
        { Comment_Graphical       	F 0 99},
        { Comment_HiddenGraphical 	F 0 99}
}


net_diagram ::= {
	{ Title           		T 1 1 },
	{ Author          		T 1 1 },
	{ Date            		T 1 1 },
	{ CopyRight       		T 1 1 },
	{ Description    		T 1 1 },
	{ Change                  	T 1 1 },
	{ Comment_Graphical       	F 0 99},
	{ Comment_HiddenGraphical 	F 0 99}
}


-- #################################
-- ## Categories without standard constraints
-- ## default set to '-'
-- #################################

-- OK
local ::= {
	{ Comment_Default                 T 0 1 }
}

--# OK
signal ::= {
	{ Comment_Default                 T 0 1 }
}

--# not reported
--assertion ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# unknown
--ref_ident ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# not reported
--literal ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# not reported
--predef_opr ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# not reported
--ref_operator ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# NOT reported
--terminator ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# reported but default not created 6/R15/R16
--transition ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# reported but default not created 6/R15/R16
--activate_block ::= {
--	{ Comment_Default                 T 0 1 }
--}

--# reported but default not created 6/R15/R16
--action ::= {
--	{ Comment_Default                 T 0 1 }
--}

--#unknown
--branch ::= {
--	{ Comment_Default                 T 0 1 }
--}

--#unknown
--tree_diagram ::= {
--	{ Comment_Default                 T 0 1 }
--}

END

-- #################################
-- END OF DEFINITION OF CATEGORIES OF NOTE TYPES
-- #################################


-- ######################################################################
