| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * Copyright 2012 Google Inc. |    2  * Copyright 2012 Google Inc. | 
|    3  * |    3  * | 
|    4  * Use of this source code is governed by a BSD-style license that can be |    4  * Use of this source code is governed by a BSD-style license that can be | 
|    5  * found in the LICENSE file. |    5  * found in the LICENSE file. | 
|    6  */ |    6  */ | 
|    7  |    7  | 
|    8 #include "GrProcessor.h" |    8 #include "GrProcessor.h" | 
|    9 #include "GrContext.h" |    9 #include "GrContext.h" | 
|   10 #include "GrCoordTransform.h" |   10 #include "GrCoordTransform.h" | 
|   11 #include "GrGeometryProcessor.h" |   11 #include "GrGeometryProcessor.h" | 
|   12 #include "GrInvariantOutput.h" |   12 #include "GrInvariantOutput.h" | 
|   13 #include "GrMemoryPool.h" |   13 #include "GrMemoryPool.h" | 
|   14 #include "GrXferProcessor.h" |   14 #include "GrXferProcessor.h" | 
|   15 #include "SkSpinlock.h" |   15 #include "SkSpinlock.h" | 
 |   16 #include "gl/GrGLFragmentProcessor.h" | 
|   16  |   17  | 
|   17 #if SK_ALLOW_STATIC_GLOBAL_INITIALIZERS |   18 #if SK_ALLOW_STATIC_GLOBAL_INITIALIZERS | 
|   18  |   19  | 
|   19 class GrFragmentProcessor; |   20 class GrFragmentProcessor; | 
|   20 class GrGeometryProcessor; |   21 class GrGeometryProcessor; | 
|   21  |   22  | 
|   22 /* |   23 /* | 
|   23  * Originally these were both in the processor unit test header, but then it see
     med to cause linker |   24  * Originally these were both in the processor unit test header, but then it see
     med to cause linker | 
|   24  * problems on android. |   25  * problems on android. | 
|   25  */ |   26  */ | 
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  149         return false; |  150         return false; | 
|  150     } |  151     } | 
|  151     for (int i = 0; i < this->numChildProcessors(); ++i) { |  152     for (int i = 0; i < this->numChildProcessors(); ++i) { | 
|  152         if (!this->childProcessor(i).isEqual(that.childProcessor(i), ignoreCoord
     Transforms)) { |  153         if (!this->childProcessor(i).isEqual(that.childProcessor(i), ignoreCoord
     Transforms)) { | 
|  153             return false; |  154             return false; | 
|  154         } |  155         } | 
|  155     } |  156     } | 
|  156     return true; |  157     return true; | 
|  157 } |  158 } | 
|  158  |  159  | 
 |  160 GrGLFragmentProcessor* GrFragmentProcessor::createGLInstance() const { | 
 |  161     GrGLFragmentProcessor* glFragProc = this->onCreateGLInstance(); | 
 |  162     glFragProc->fChildProcessors.push_back_n(fChildProcessors.count()); | 
 |  163     for (int i = 0; i < fChildProcessors.count(); ++i) { | 
 |  164         glFragProc->fChildProcessors[i] = fChildProcessors[i].processor()->creat
     eGLInstance(); | 
 |  165     } | 
 |  166     return glFragProc; | 
 |  167 } | 
 |  168  | 
|  159 void GrFragmentProcessor::addCoordTransform(const GrCoordTransform* transform) { |  169 void GrFragmentProcessor::addCoordTransform(const GrCoordTransform* transform) { | 
|  160     fCoordTransforms.push_back(transform); |  170     fCoordTransforms.push_back(transform); | 
|  161     fUsesLocalCoords = fUsesLocalCoords || transform->sourceCoords() == kLocal_G
     rCoordSet; |  171     fUsesLocalCoords = fUsesLocalCoords || transform->sourceCoords() == kLocal_G
     rCoordSet; | 
|  162     SkDEBUGCODE(transform->setInProcessor();) |  172     SkDEBUGCODE(transform->setInProcessor();) | 
|  163 } |  173 } | 
|  164  |  174  | 
|  165 int GrFragmentProcessor::registerChildProcessor(const GrFragmentProcessor* child
     ) { |  175 int GrFragmentProcessor::registerChildProcessor(const GrFragmentProcessor* child
     ) { | 
|  166     // Append the child's transforms to our transforms array and the child's tex
     tures array to our |  176     // Append the child's transforms to our transforms array and the child's tex
     tures array to our | 
|  167     // textures array |  177     // textures array | 
|  168     if (!child->fCoordTransforms.empty()) { |  178     if (!child->fCoordTransforms.empty()) { | 
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  210 ////////////////////////////////////////////////////////////////////////////////
     /////////////////// |  220 ////////////////////////////////////////////////////////////////////////////////
     /////////////////// | 
|  211  |  221  | 
|  212 // GrProcessorDataManager lives in the same pool |  222 // GrProcessorDataManager lives in the same pool | 
|  213 void* GrProcessorDataManager::operator new(size_t size) { |  223 void* GrProcessorDataManager::operator new(size_t size) { | 
|  214     return MemoryPoolAccessor().pool()->allocate(size); |  224     return MemoryPoolAccessor().pool()->allocate(size); | 
|  215 } |  225 } | 
|  216  |  226  | 
|  217 void GrProcessorDataManager::operator delete(void* target) { |  227 void GrProcessorDataManager::operator delete(void* target) { | 
|  218     return MemoryPoolAccessor().pool()->release(target); |  228     return MemoryPoolAccessor().pool()->release(target); | 
|  219 } |  229 } | 
| OLD | NEW |