हमारा सुझाव है कि 27 मार्च, 2025 से AOSP को बनाने और उसमें योगदान देने के लिए, aosp-main के बजाय android-latest-release का इस्तेमाल करें. ज़्यादा जानकारी के लिए, AOSP में हुए बदलाव लेख पढ़ें.
  
         
       
     
  
  
  
    
  
  
  
    
    
      
    
    
      
      संग्रह की मदद से व्यवस्थित रहें
    
    
      
      अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
    
  
  
    
  
  
  
  
    
  
  
    
    
    
  
  gralloc_module_t स्ट्रक्चर का रेफ़रंस
 
  
   #include <
   
    gralloc.h
   
   >
  
 
 
  
   |  | 
  
   | struct
    
     hw_module_t | सामान्य | 
  
   |  | 
  
   | int(* | registerBuffer
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle) | 
  
   |  | 
  
   | int(* | unregisterBuffer
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle) | 
  
   |  | 
  
   | int(* | lock
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr) | 
  
   |  | 
  
   | int(* | unlock
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle) | 
  
   |  | 
  
   | int(* | perform
    
    )(struct
    
     gralloc_module_t
    
    const *module, int operation,...) | 
  
   |  | 
  
   | int(* | lock_ycbcr
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr) | 
  
   |  | 
  
   | int(* | lockAsync
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr, int fenceFd) | 
  
   |  | 
  
   | int(* | unlockAsync
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle, int *fenceFd) | 
  
   |  | 
  
   | int(* | lockAsync_ycbcr
    
    )(struct
    
     gralloc_module_t
    
    const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr, int fenceFd) | 
  
   |  | 
  
   | void * | reserved_proc
    
    [3] | 
  
   |  | 
 
 
 
 
 
  
   हर हार्डवेयर मॉड्यूल में, HAL_MODULE_INFO_SYM नाम का डेटा स्ट्रक्चर होना चाहिए. साथ ही, इस डेटा स्ट्रक्चर के फ़ील्ड,
   
    hw_module_t
    से शुरू होने चाहिए. इसके बाद, मॉड्यूल की खास जानकारी होनी चाहिए.
  
  
   परिभाषा,
   
    gralloc.h
   
   की लाइन
   
    155
    पर दी गई है.
  
  
 
 
 
 
 
 
 
  
   
    
     | int(* lock)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr) | 
   
   
  
  
 
 
 
  
   
    
     | int(* lock_ycbcr)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr) | 
   
   
  
  
 
 
 
  
   
    
     | int(* lockAsync)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, void **vaddr, int fenceFd) | 
   
   
  
  
 
 
 
  
   
    
     | int(* lockAsync_ycbcr)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle, int usage, int l, int t, int w, int h, struct android_ycbcr *ycbcr, int fenceFd) | 
   
   
  
  
 
 
 
 
 
 
  
   
    
     | int(* registerBuffer)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle) | 
   
   
  
  
 
 
 
 
 
 
 
 
 
  
   
    
     | int(* unlockAsync)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle, int *fenceFd) | 
   
   
  
  
 
 
 
  
   
    
     | int(* unregisterBuffer)(struct
      
       gralloc_module_t
      
      const *module, buffer_handle_t handle) | 
   
   
  
  
 
 इस स्ट्रक्चर का दस्तावेज़, इस फ़ाइल से जनरेट किया गया था:
 
  - 
   hardware/libhardware/include/hardware/
   
    gralloc.h
   
  
 
 
  
  
  
 
  
    
    
      
    
    
  
       
    
    
  
  
  इस पेज पर मौजूद कॉन्टेंट और कोड सैंपल कॉन्टेंट के लाइसेंस में बताए गए लाइसेंस के हिसाब से हैं. Java और OpenJDK, Oracle और/या इससे जुड़ी हुई कंपनियों के ट्रेडमार्क या रजिस्टर किए हुए ट्रेडमार्क हैं.
  आखिरी बार 2025-07-27 (UTC) को अपडेट किया गया.
  
  
  
    
      [[["समझने में आसान है","easyToUnderstand","thumb-up"],["मेरी समस्या हल हो गई","solvedMyProblem","thumb-up"],["अन्य","otherUp","thumb-up"]],[["वह जानकारी मौजूद नहीं है जो मुझे चाहिए","missingTheInformationINeed","thumb-down"],["बहुत मुश्किल है / बहुत सारे चरण हैं","tooComplicatedTooManySteps","thumb-down"],["पुराना","outOfDate","thumb-down"],["अनुवाद से जुड़ी समस्या","translationIssue","thumb-down"],["सैंपल / कोड से जुड़ी समस्या","samplesCodeIssue","thumb-down"],["अन्य","otherDown","thumb-down"]],["आखिरी बार 2025-07-27 (UTC) को अपडेट किया गया."],[],[]]