OpenShot Library | libopenshot  0.4.0
EffectInfo.h
Go to the documentation of this file.
1 
9 // Copyright (c) 2008-2019 OpenShot Studios, LLC
10 //
11 // SPDX-License-Identifier: LGPL-3.0-or-later
12 
13 #ifndef OPENSHOT_EFFECT_INFO_H
14 #define OPENSHOT_EFFECT_INFO_H
15 
16 #include "Json.h"
17 
18 namespace openshot
19 {
20  class Clip;
21  class EffectBase;
28  class EffectInfo
29  {
30  public:
32  EffectBase* CreateEffect(std::string effect_type);
33 
34  // JSON methods
35  static std::string Json();
36  static Json::Value JsonValue();
37 
38  };
39 
40 }
41 
42 #endif
openshot::EffectInfo
This class returns a listing of all effects supported by libopenshot.
Definition: EffectInfo.h:28
openshot::EffectBase
This abstract class is the base class, used by all effects in libopenshot.
Definition: EffectBase.h:53
openshot::EffectInfo::CreateEffect
EffectBase * CreateEffect(std::string effect_type)
Create an instance of an effect (factory style)
Definition: EffectInfo.cpp:26
openshot
This namespace is the default namespace for all code in the openshot library.
Definition: Compressor.h:28
openshot::EffectInfo::Json
static std::string Json()
Generate JSON string of this object.
Definition: EffectInfo.cpp:19
openshot::EffectInfo::JsonValue
static Json::Value JsonValue()
Generate Json::Value for this object.
Definition: EffectInfo.cpp:115
Json.h
Header file for JSON class.