OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 float sampleRate() const { return m_sampleRate; } | 60 float sampleRate() const { return m_sampleRate; } |
61 double nyquist() const { return 0.5 * sampleRate(); } | 61 double nyquist() const { return 0.5 * sampleRate(); } |
62 | 62 |
63 AudioDSPKernelProcessor* processor() { return m_kernelProcessor; } | 63 AudioDSPKernelProcessor* processor() { return m_kernelProcessor; } |
64 const AudioDSPKernelProcessor* processor() const { return m_kernelProcessor;
} | 64 const AudioDSPKernelProcessor* processor() const { return m_kernelProcessor;
} |
65 | 65 |
66 virtual double tailTime() const = 0; | 66 virtual double tailTime() const = 0; |
67 virtual double latencyTime() const = 0; | 67 virtual double latencyTime() const = 0; |
68 | 68 |
69 protected: | 69 protected: |
| 70 // Oilpan: This raw pointer is safe because the AudioDSPKernelProcessor |
| 71 // object is guaranteed to be kept alive while the AudioDSPKernel object |
| 72 // is alive. Ideally we want to move the AudioDSPKernel hierarchy to |
| 73 // the heap and use a Member<AudioDSPKernelProcessor>. However, we cannot |
| 74 // do that because AudioDSPKernel can be allocated in audio threads |
| 75 // (which are not registered to Oilpan). |
| 76 GC_PLUGIN_IGNORE("http://crbug.com/404578") |
70 AudioDSPKernelProcessor* m_kernelProcessor; | 77 AudioDSPKernelProcessor* m_kernelProcessor; |
71 float m_sampleRate; | 78 float m_sampleRate; |
72 }; | 79 }; |
73 | 80 |
74 } // namespace blink | 81 } // namespace blink |
75 | 82 |
76 #endif // AudioDSPKernel_h | 83 #endif // AudioDSPKernel_h |
OLD | NEW |