+
+ /**
+ * Getter for given variable group
+ *
+ * @param $variableGroup Variable group to check
+ * @return $varStack Found variable group
+ */
+ function getVarStack ($variableGroup);
+
+ /**
+ * Settter for variable group
+ *
+ * @param $groupName Name of variable group
+ * @param $add Whether add this group
+ * @return void
+ */
+ function setVariableGroup ($groupName, $add = TRUE);
+
+ /**
+ * Getter for template type
+ *
+ * @return $templateType The current template's type
+ */
+ function getTemplateType ();
+
+ /**
+ * Getter for base path
+ *
+ * @return $templateBasePath The relative base path for all templates
+ */
+ function getTemplateBasePath ();
+
+ /**
+ * Getter for generic base path
+ *
+ * @return $templateBasePath The relative base path for all templates
+ */
+ function getGenericBasePath ();
+
+ /**
+ * Getter for template extension
+ *
+ * @return $templateExtension The file extension for all uncompiled
+ * templates
+ */
+ function getRawTemplateExtension ();
+
+ /**
+ * Getter for code-template extension
+ *
+ * @return $codeExtension The file extension for all code-
+ * templates
+ */
+ function getCodeTemplateExtension ();
+
+ /**
+ * Getter for raw template data
+ *
+ * @return $rawTemplateData The raw data from the template
+ */
+ function getRawTemplateData ();
+
+ /**
+ * Assigns a lot variables into the stack of currently loaded template.
+ * This method should only be used in very rare circumstances, e.g. when
+ * you have to copy a whole set of variables into the template engine.
+ * Before you use this method, please make sure you have considered all
+ * other possiblities.
+ *
+ * @param $variables An array with variables to be assigned
+ * @return void
+ */
+ function assignMultipleVariables (array $variables);
+
+ /**
+ * Getter for variable group array
+ *
+ * @return $variableGroups All variable groups
+ */
+ function getVariableGroups ();