Blender V4.3
BlenderStyleModule.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
13
14#include "BLI_utildefines.h" // BLI_assert()
15
16struct Text;
17
18namespace Freestyle {
19
21 public:
22 BufferedStyleModule(const string &buffer, const string &file_name, Interpreter *inter)
23 : StyleModule(file_name, inter)
24 {
25 _buffer = buffer;
26 }
27
29
30 protected:
31 virtual int interpret()
32 {
33 PythonInterpreter *py_inter = dynamic_cast<PythonInterpreter *>(_inter);
34 BLI_assert(py_inter != 0);
35 return py_inter->interpretString(_buffer, getFileName());
36 }
37
38 private:
39 string _buffer;
40
41#ifdef WITH_CXX_GUARDEDALLOC
42 MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:BufferedStyleModule")
43#endif
44};
45
47 public:
48 BlenderStyleModule(struct Text *text, const string &name, Interpreter *inter)
49 : StyleModule(name, inter)
50 {
51 _text = text;
52 }
53
55
56 protected:
57 virtual int interpret()
58 {
59 PythonInterpreter *py_inter = dynamic_cast<PythonInterpreter *>(_inter);
60 BLI_assert(py_inter != 0);
61 return py_inter->interpretText(_text, getFileName());
62 }
63
64 private:
65 struct Text *_text;
66
67#ifdef WITH_CXX_GUARDEDALLOC
68 MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:BlenderStyleModule")
69#endif
70};
71
72} /* namespace Freestyle */
#define BLI_assert(a)
Definition BLI_assert.h:50
Python Interpreter.
Class representing a style module.
BlenderStyleModule(struct Text *text, const string &name, Interpreter *inter)
BufferedStyleModule(const string &buffer, const string &file_name, Interpreter *inter)
int interpretString(const string &str, const string &name)
int interpretText(struct Text *text, const string &name)
const string getFileName() const
Definition StyleModule.h:90
inherits from class Rep
Definition AppCanvas.cpp:20