LCOV - code coverage report
Current view: top level - obj-x86_64-pc-linux-gnu/dist/include/mozilla/dom - BiquadFilterNodeBinding.h (source / functions) Hit Total Coverage
Test: output.info Lines: 0 11 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 5 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* THIS FILE IS AUTOGENERATED FROM BiquadFilterNode.webidl BY Codegen.py - DO NOT EDIT */
       2             : 
       3             : #ifndef mozilla_dom_BiquadFilterNodeBinding_h
       4             : #define mozilla_dom_BiquadFilterNodeBinding_h
       5             : 
       6             : #include "AudioNodeBinding.h"
       7             : #include "js/RootingAPI.h"
       8             : #include "jspubtd.h"
       9             : #include "mozilla/ErrorResult.h"
      10             : #include "mozilla/dom/BindingDeclarations.h"
      11             : #include "mozilla/dom/Nullable.h"
      12             : 
      13             : namespace mozilla {
      14             : namespace dom {
      15             : 
      16             : class BiquadFilterNode;
      17             : struct BiquadFilterNodeAtoms;
      18             : struct BiquadFilterOptionsAtoms;
      19             : struct NativePropertyHooks;
      20             : class ProtoAndIfaceCache;
      21             : 
      22             : } // namespace dom
      23             : } // namespace mozilla
      24             : 
      25             : namespace mozilla {
      26             : namespace dom {
      27             : 
      28             : enum class BiquadFilterType : uint8_t {
      29             :   Lowpass,
      30             :   Highpass,
      31             :   Bandpass,
      32             :   Lowshelf,
      33             :   Highshelf,
      34             :   Peaking,
      35             :   Notch,
      36             :   Allpass,
      37             :   EndGuard_
      38             : };
      39             : 
      40             : namespace BiquadFilterTypeValues {
      41             : extern const EnumEntry strings[9];
      42             : } // namespace BiquadFilterTypeValues
      43             : 
      44             : bool
      45             : ToJSValue(JSContext* aCx, BiquadFilterType aArgument, JS::MutableHandle<JS::Value> aValue);
      46             : 
      47             : 
      48           0 : struct BiquadFilterOptions : public AudioNodeOptions
      49             : {
      50             :   MOZ_INIT_OUTSIDE_CTOR float mQ;
      51             :   MOZ_INIT_OUTSIDE_CTOR float mDetune;
      52             :   MOZ_INIT_OUTSIDE_CTOR float mFrequency;
      53             :   MOZ_INIT_OUTSIDE_CTOR float mGain;
      54             :   MOZ_INIT_OUTSIDE_CTOR BiquadFilterType mType;
      55             : 
      56             :   BiquadFilterOptions();
      57             : 
      58           0 :   explicit inline BiquadFilterOptions(const FastDictionaryInitializer& )
      59           0 :     : AudioNodeOptions(FastDictionaryInitializer())
      60             :   {
      61             :     // Do nothing here; this is used by our "Fast" subclass
      62           0 :   }
      63             : 
      64             :   explicit inline BiquadFilterOptions(const BiquadFilterOptions& aOther)
      65             :   {
      66             :     *this = aOther;
      67             :   }
      68             : 
      69             :   bool
      70             :   Init(JSContext* cx, JS::Handle<JS::Value> val, const char* sourceDescription = "Value", bool passedToJSImpl = false);
      71             : 
      72             :   bool
      73             :   Init(const nsAString& aJSON);
      74             : 
      75             :   bool
      76             :   ToObjectInternal(JSContext* cx, JS::MutableHandle<JS::Value> rval) const;
      77             : 
      78             :   bool
      79             :   ToJSON(nsAString& aJSON) const;
      80             : 
      81             :   void
      82             :   TraceDictionary(JSTracer* trc);
      83             : 
      84             :   BiquadFilterOptions&
      85             :   operator=(const BiquadFilterOptions& aOther);
      86             : 
      87             : private:
      88             :   static bool
      89             :   InitIds(JSContext* cx, BiquadFilterOptionsAtoms* atomsCache);
      90             : };
      91             : 
      92             : namespace binding_detail {
      93           0 : struct FastBiquadFilterOptions : public BiquadFilterOptions
      94             : {
      95           0 :   inline FastBiquadFilterOptions()
      96           0 :     : BiquadFilterOptions(FastDictionaryInitializer())
      97             :   {
      98             :     // Doesn't matter what int we pass to the parent constructor
      99           0 :   }
     100             : };
     101             : } // namespace binding_detail
     102             : 
     103             : 
     104             : namespace BiquadFilterNodeBinding {
     105             : 
     106             :   typedef mozilla::dom::BiquadFilterNode NativeType;
     107             : 
     108             :   bool
     109             :   ConstructorEnabled(JSContext* aCx, JS::Handle<JSObject*> aObj);
     110             : 
     111             :   JSObject*
     112             :   DefineDOMInterface(JSContext* aCx, JS::Handle<JSObject*> aGlobal, JS::Handle<jsid> id, bool aDefineOnGlobal);
     113             : 
     114             :   const JSClass*
     115             :   GetJSClass();
     116             : 
     117             :   bool
     118             :   Wrap(JSContext* aCx, mozilla::dom::BiquadFilterNode* aObject, nsWrapperCache* aCache, JS::Handle<JSObject*> aGivenProto, JS::MutableHandle<JSObject*> aReflector);
     119             : 
     120             :   template <class T>
     121           0 :   inline JSObject* Wrap(JSContext* aCx, T* aObject, JS::Handle<JSObject*> aGivenProto)
     122             :   {
     123           0 :     JS::Rooted<JSObject*> reflector(aCx);
     124           0 :     return Wrap(aCx, aObject, aObject, aGivenProto, &reflector) ? reflector.get() : nullptr;
     125             :   }
     126             : 
     127             :   // We declare this as an array so that retrieving a pointer to this
     128             :   // binding's property hooks only requires compile/link-time resolvable
     129             :   // address arithmetic.  Declaring it as a pointer instead would require
     130             :   // doing a run-time load to fetch a pointer to this binding's property
     131             :   // hooks.  And then structures which embedded a pointer to this structure
     132             :   // would require a run-time load for proper initialization, which would
     133             :   // then induce static constructors.  Lots of static constructors.
     134             :   extern const NativePropertyHooks sNativePropertyHooks[];
     135             : 
     136             :   void
     137             :   CreateInterfaceObjects(JSContext* aCx, JS::Handle<JSObject*> aGlobal, ProtoAndIfaceCache& aProtoAndIfaceCache, bool aDefineOnGlobal);
     138             : 
     139             :   JS::Handle<JSObject*>
     140             :   GetProtoObjectHandle(JSContext* aCx);
     141             : 
     142             :   JS::Handle<JSObject*>
     143             :   GetConstructorObjectHandle(JSContext* aCx, bool aDefineOnGlobal = true);
     144             : 
     145             :   JSObject*
     146             :   GetConstructorObject(JSContext* aCx);
     147             : 
     148             : } // namespace BiquadFilterNodeBinding
     149             : 
     150             : 
     151             : 
     152             : } // namespace dom
     153             : } // namespace mozilla
     154             : 
     155             : #endif // mozilla_dom_BiquadFilterNodeBinding_h

Generated by: LCOV version 1.13