[{"data":1,"prerenderedAt":801},["ShallowReactive",2],{"c909oy8e7p":3},{"title":4,"description":5,"parent":6,"cmd_buf_level":7,"render_pass_scope":10,"video_coding_scope":10,"supported_queue_types":11,"tasks":16,"type":19,"xrefs":20,"body":24,"_type":800,"_id":4},"vkCmdEndQuery","Ends a query","VK_VERSION_1_0",[8,9],"primary","secondary","both",[12,13,14,15],"graphics","compute","decode","encode",[17,18],"action","state","protos",[21,22,23],"vkCmdBeginQuery","vkCmdBeginQueryIndexedEXT","vkCmdEndQueryIndexedEXT",{"type":25,"children":26,"toc":798},"root",[27,35,255,291,310,315,351,362,389,606,746,792],{"type":28,"tag":29,"props":30,"children":31},"element","p",{},[32],{"type":33,"value":34},"text","To end a query after the set of desired drawing or dispatching commands is\nexecuted, call:",{"type":28,"tag":36,"props":37,"children":38},"code-group",{},[39,133],{"type":28,"tag":40,"props":41,"children":47},"pre",{"className":42,"code":43,"filename":44,"language":45,"meta":46,"style":46},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdEndQuery(\n VkCommandBuffer commandBuffer,\n VkQueryPool queryPool,\n uint32_t query);\n","C","c","",[48],{"type":28,"tag":49,"props":50,"children":51},"code",{"__ignoreMap":46},[52,76,96,114],{"type":28,"tag":53,"props":54,"children":57},"span",{"class":55,"line":56},"line",1,[58,64,70],{"type":28,"tag":53,"props":59,"children":61},{"style":60},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[62],{"type":33,"value":63},"void",{"type":28,"tag":53,"props":65,"children":67},{"style":66},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[68],{"type":33,"value":69}," vkCmdEndQuery",{"type":28,"tag":53,"props":71,"children":73},{"style":72},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[74],{"type":33,"value":75},"(\n",{"type":28,"tag":53,"props":77,"children":79},{"class":55,"line":78},2,[80,85,91],{"type":28,"tag":53,"props":81,"children":82},{"style":72},[83],{"type":33,"value":84}," VkCommandBuffer ",{"type":28,"tag":53,"props":86,"children":88},{"style":87},"--shiki-default:#953800;--shiki-dark:#FFA657",[89],{"type":33,"value":90},"commandBuffer",{"type":28,"tag":53,"props":92,"children":93},{"style":72},[94],{"type":33,"value":95},",\n",{"type":28,"tag":53,"props":97,"children":99},{"class":55,"line":98},3,[100,105,110],{"type":28,"tag":53,"props":101,"children":102},{"style":72},[103],{"type":33,"value":104}," VkQueryPool ",{"type":28,"tag":53,"props":106,"children":107},{"style":87},[108],{"type":33,"value":109},"queryPool",{"type":28,"tag":53,"props":111,"children":112},{"style":72},[113],{"type":33,"value":95},{"type":28,"tag":53,"props":115,"children":117},{"class":55,"line":116},4,[118,123,128],{"type":28,"tag":53,"props":119,"children":120},{"style":60},[121],{"type":33,"value":122}," uint32_t",{"type":28,"tag":53,"props":124,"children":125},{"style":87},[126],{"type":33,"value":127}," query",{"type":28,"tag":53,"props":129,"children":130},{"style":72},[131],{"type":33,"value":132},");\n",{"type":28,"tag":40,"props":134,"children":139},{"className":135,"code":136,"filename":137,"language":138,"meta":46,"style":46},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_end_query(\n command_buffer: vk::CommandBuffer,\n query_pool: vk::QueryPool,\n query: u32,\n);\n","Rust","rs",[140],{"type":28,"tag":49,"props":141,"children":142},{"__ignoreMap":46},[143,165,197,226,247],{"type":28,"tag":53,"props":144,"children":145},{"class":55,"line":56},[146,151,156,161],{"type":28,"tag":53,"props":147,"children":148},{"style":60},[149],{"type":33,"value":150},"pub",{"type":28,"tag":53,"props":152,"children":153},{"style":60},[154],{"type":33,"value":155}," fn",{"type":28,"tag":53,"props":157,"children":158},{"style":66},[159],{"type":33,"value":160}," cmd_end_query",{"type":28,"tag":53,"props":162,"children":163},{"style":72},[164],{"type":33,"value":75},{"type":28,"tag":53,"props":166,"children":167},{"class":55,"line":78},[168,173,178,183,188,193],{"type":28,"tag":53,"props":169,"children":170},{"style":72},[171],{"type":33,"value":172}," command_buffer",{"type":28,"tag":53,"props":174,"children":175},{"style":60},[176],{"type":33,"value":177},":",{"type":28,"tag":53,"props":179,"children":180},{"style":87},[181],{"type":33,"value":182}," vk",{"type":28,"tag":53,"props":184,"children":185},{"style":60},[186],{"type":33,"value":187},"::",{"type":28,"tag":53,"props":189,"children":190},{"style":87},[191],{"type":33,"value":192},"CommandBuffer",{"type":28,"tag":53,"props":194,"children":195},{"style":72},[196],{"type":33,"value":95},{"type":28,"tag":53,"props":198,"children":199},{"class":55,"line":98},[200,205,209,213,217,222],{"type":28,"tag":53,"props":201,"children":202},{"style":72},[203],{"type":33,"value":204}," query_pool",{"type":28,"tag":53,"props":206,"children":207},{"style":60},[208],{"type":33,"value":177},{"type":28,"tag":53,"props":210,"children":211},{"style":87},[212],{"type":33,"value":182},{"type":28,"tag":53,"props":214,"children":215},{"style":60},[216],{"type":33,"value":187},{"type":28,"tag":53,"props":218,"children":219},{"style":87},[220],{"type":33,"value":221},"QueryPool",{"type":28,"tag":53,"props":223,"children":224},{"style":72},[225],{"type":33,"value":95},{"type":28,"tag":53,"props":227,"children":228},{"class":55,"line":116},[229,234,238,243],{"type":28,"tag":53,"props":230,"children":231},{"style":72},[232],{"type":33,"value":233}," query",{"type":28,"tag":53,"props":235,"children":236},{"style":60},[237],{"type":33,"value":177},{"type":28,"tag":53,"props":239,"children":240},{"style":87},[241],{"type":33,"value":242}," u32",{"type":28,"tag":53,"props":244,"children":245},{"style":72},[246],{"type":33,"value":95},{"type":28,"tag":53,"props":248,"children":250},{"class":55,"line":249},5,[251],{"type":28,"tag":53,"props":252,"children":253},{"style":72},[254],{"type":33,"value":132},{"type":28,"tag":256,"props":257,"children":258},"ul",{},[259,270,280],{"type":28,"tag":260,"props":261,"children":262},"li",{},[263,268],{"type":28,"tag":49,"props":264,"children":266},{"className":265},[],[267],{"type":33,"value":90},{"type":33,"value":269}," is the command buffer into which this command will\nbe recorded.",{"type":28,"tag":260,"props":271,"children":272},{},[273,278],{"type":28,"tag":49,"props":274,"children":276},{"className":275},[],[277],{"type":33,"value":109},{"type":33,"value":279}," is the query pool that is managing the results of the\nquery.",{"type":28,"tag":260,"props":281,"children":282},{},[283,289],{"type":28,"tag":49,"props":284,"children":286},{"className":285},[],[287],{"type":33,"value":288},"query",{"type":33,"value":290}," is the query index within the query pool where the result is\nstored.",{"type":28,"tag":29,"props":292,"children":293},{},[294,296,301,303,308],{"type":33,"value":295},"The command completes the query in ",{"type":28,"tag":49,"props":297,"children":299},{"className":298},[],[300],{"type":33,"value":109},{"type":33,"value":302}," identified by\n",{"type":28,"tag":49,"props":304,"children":306},{"className":305},[],[307],{"type":33,"value":288},{"type":33,"value":309},", and marks it as available.",{"type":28,"tag":29,"props":311,"children":312},{},[313],{"type":33,"value":314},"This command defines an execution dependency between other query commands\nthat reference the same query.",{"type":28,"tag":29,"props":316,"children":317},{},[318,320,327,329,334,336,341,343,349],{"type":33,"value":319},"The first ",{"type":28,"tag":321,"props":322,"children":324},"a",{"href":323},"/chapters/synchronization#synchronization-dependencies-scopes",[325],{"type":33,"value":326},"synchronization scope",{"type":33,"value":328},"\nincludes all commands which reference the queries in ",{"type":28,"tag":49,"props":330,"children":332},{"className":331},[],[333],{"type":33,"value":109},{"type":33,"value":335},"\nindicated by ",{"type":28,"tag":49,"props":337,"children":339},{"className":338},[],[340],{"type":33,"value":288},{"type":33,"value":342}," that occur earlier in\n",{"type":28,"tag":321,"props":344,"children":346},{"href":345},"/chapters/synchronization#synchronization-submission-order",[347],{"type":33,"value":348},"submission order",{"type":33,"value":350},".",{"type":28,"tag":29,"props":352,"children":353},{},[354,356,360],{"type":33,"value":355},"The second ",{"type":28,"tag":321,"props":357,"children":358},{"href":323},[359],{"type":33,"value":326},{"type":33,"value":361},"\nincludes only the operation of this command.",{"type":28,"tag":29,"props":363,"children":364},{},[365,367,372,374,379,381,387],{"type":33,"value":366},"Calling ",{"type":28,"tag":49,"props":368,"children":370},{"className":369},[],[371],{"type":33,"value":4},{"type":33,"value":373}," is equivalent to calling\n",{"type":28,"tag":321,"props":375,"children":377},{"href":376},"/man/vkCmdEndQueryIndexedEXT",[378],{"type":33,"value":23},{"type":33,"value":380}," with the ",{"type":28,"tag":49,"props":382,"children":384},{"className":383},[],[385],{"type":33,"value":386},"index",{"type":33,"value":388}," parameter set to zero.",{"type":28,"tag":390,"props":391,"children":393},"validity-group",{"name":392},"Valid Usage",[394,417,441,474,536,585],{"type":28,"tag":395,"props":396,"children":398},"validity-field",{"name":397},"VUID-vkCmdEndQuery-None-01923",[399],{"type":28,"tag":29,"props":400,"children":401},{},[402,404,409,411],{"type":33,"value":403},"All queries used by the command ",{"type":28,"tag":405,"props":406,"children":408},"normative",{"type":407},"must",[],{"type":33,"value":410}," be\n",{"type":28,"tag":321,"props":412,"children":414},{"href":413},"/man/vkCmdBeginQuery#queries-operation-active",[415],{"type":33,"value":416},"active",{"type":28,"tag":395,"props":418,"children":420},{"name":419},"VUID-vkCmdEndQuery-query-00810",[421],{"type":28,"tag":29,"props":422,"children":423},{},[424,429,431,434,436],{"type":28,"tag":49,"props":425,"children":427},{"className":426},[],[428],{"type":33,"value":288},{"type":33,"value":430}," ",{"type":28,"tag":405,"props":432,"children":433},{"type":407},[],{"type":33,"value":435}," be less than the number of queries in ",{"type":28,"tag":49,"props":437,"children":439},{"className":438},[],[440],{"type":33,"value":109},{"type":28,"tag":395,"props":442,"children":444},{"name":443},"VUID-vkCmdEndQuery-query-00812",[445],{"type":28,"tag":29,"props":446,"children":447},{},[448,450,455,457,462,464,467,469],{"type":33,"value":449},"If ",{"type":28,"tag":49,"props":451,"children":453},{"className":452},[],[454],{"type":33,"value":4},{"type":33,"value":456}," is called within a render pass instance, the sum\nof ",{"type":28,"tag":49,"props":458,"children":460},{"className":459},[],[461],{"type":33,"value":288},{"type":33,"value":463}," and the number of bits set in the current subpass’s view\nmask ",{"type":28,"tag":405,"props":465,"children":466},{"type":407},[],{"type":33,"value":468}," be less than or equal to the number of queries in\n",{"type":28,"tag":49,"props":470,"children":472},{"className":471},[],[473],{"type":33,"value":109},{"type":28,"tag":395,"props":475,"children":477},{"name":476},"VUID-vkCmdEndQuery-queryPool-03227",[478],{"type":28,"tag":29,"props":479,"children":480},{},[481,482,487,489,495,497,503,505,510,512,518,520,525,526,529,531],{"type":33,"value":449},{"type":28,"tag":49,"props":483,"children":485},{"className":484},[],[486],{"type":33,"value":109},{"type":33,"value":488}," was created with a ",{"type":28,"tag":49,"props":490,"children":492},{"className":491},[],[493],{"type":33,"value":494},"queryType",{"type":33,"value":496}," of\n",{"type":28,"tag":49,"props":498,"children":500},{"className":499},[],[501],{"type":33,"value":502},"VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR",{"type":33,"value":504}," and one or more of the\ncounters used to create ",{"type":28,"tag":49,"props":506,"children":508},{"className":507},[],[509],{"type":33,"value":109},{"type":33,"value":511}," was\n",{"type":28,"tag":49,"props":513,"children":515},{"className":514},[],[516],{"type":33,"value":517},"VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR",{"type":33,"value":519},", the\n",{"type":28,"tag":321,"props":521,"children":523},{"href":522},"/man/vkCmdEndQuery",[524],{"type":33,"value":4},{"type":33,"value":430},{"type":28,"tag":405,"props":527,"children":528},{"type":407},[],{"type":33,"value":530}," be the last recorded command in\n",{"type":28,"tag":49,"props":532,"children":534},{"className":533},[],[535],{"type":33,"value":90},{"type":28,"tag":395,"props":537,"children":539},{"name":538},"VUID-vkCmdEndQuery-queryPool-03228",[540],{"type":28,"tag":29,"props":541,"children":542},{},[543,544,549,550,555,556,561,562,567,568,574,575,579,580,583],{"type":33,"value":449},{"type":28,"tag":49,"props":545,"children":547},{"className":546},[],[548],{"type":33,"value":109},{"type":33,"value":488},{"type":28,"tag":49,"props":551,"children":553},{"className":552},[],[554],{"type":33,"value":494},{"type":33,"value":496},{"type":28,"tag":49,"props":557,"children":559},{"className":558},[],[560],{"type":33,"value":502},{"type":33,"value":504},{"type":28,"tag":49,"props":563,"children":565},{"className":564},[],[566],{"type":33,"value":109},{"type":33,"value":511},{"type":28,"tag":49,"props":569,"children":571},{"className":570},[],[572],{"type":33,"value":573},"VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR",{"type":33,"value":519},{"type":28,"tag":321,"props":576,"children":577},{"href":522},[578],{"type":33,"value":4},{"type":33,"value":430},{"type":28,"tag":405,"props":581,"children":582},{"type":407},[],{"type":33,"value":584}," not be recorded within a render pass instance",{"type":28,"tag":395,"props":586,"children":588},{"name":587},"VUID-vkCmdEndQuery-None-07007",[589],{"type":28,"tag":29,"props":590,"children":591},{},[592,594,599,601,604],{"type":33,"value":593},"If called within a subpass of a render pass instance, the corresponding\n",{"type":28,"tag":49,"props":595,"children":597},{"className":596},[],[598],{"type":33,"value":21},{"type":33,"value":600},"* command ",{"type":28,"tag":405,"props":602,"children":603},{"type":407},[],{"type":33,"value":605}," have been called previously within\nthe same subpass",{"type":28,"tag":390,"props":607,"children":609},{"name":608},"Valid Usage (Implicit)",[610,636,660,684,713],{"type":28,"tag":395,"props":611,"children":613},{"name":612},"VUID-vkCmdEndQuery-commandBuffer-parameter",[614],{"type":28,"tag":29,"props":615,"children":616},{},[617,622,623,626,628,634],{"type":28,"tag":49,"props":618,"children":620},{"className":619},[],[621],{"type":33,"value":90},{"type":33,"value":430},{"type":28,"tag":405,"props":624,"children":625},{"type":407},[],{"type":33,"value":627}," be a valid ",{"type":28,"tag":321,"props":629,"children":631},{"href":630},"/man/VkCommandBuffer",[632],{"type":33,"value":633},"VkCommandBuffer",{"type":33,"value":635}," handle",{"type":28,"tag":395,"props":637,"children":639},{"name":638},"VUID-vkCmdEndQuery-queryPool-parameter",[640],{"type":28,"tag":29,"props":641,"children":642},{},[643,648,649,652,653,659],{"type":28,"tag":49,"props":644,"children":646},{"className":645},[],[647],{"type":33,"value":109},{"type":33,"value":430},{"type":28,"tag":405,"props":650,"children":651},{"type":407},[],{"type":33,"value":627},{"type":28,"tag":321,"props":654,"children":656},{"href":655},"/man/VkQueryPool",[657],{"type":33,"value":658},"VkQueryPool",{"type":33,"value":635},{"type":28,"tag":395,"props":661,"children":663},{"name":662},"VUID-vkCmdEndQuery-commandBuffer-recording",[664],{"type":28,"tag":29,"props":665,"children":666},{},[667,672,673,676,678],{"type":28,"tag":49,"props":668,"children":670},{"className":669},[],[671],{"type":33,"value":90},{"type":33,"value":430},{"type":28,"tag":405,"props":674,"children":675},{"type":407},[],{"type":33,"value":677}," be in the ",{"type":28,"tag":321,"props":679,"children":681},{"href":680},"/chapters/commandbuffers#commandbuffers-lifecycle",[682],{"type":33,"value":683},"recording state",{"type":28,"tag":395,"props":685,"children":687},{"name":686},"VUID-vkCmdEndQuery-commandBuffer-cmdpool",[688],{"type":28,"tag":29,"props":689,"children":690},{},[691,693,699,701,706,708,711],{"type":33,"value":692},"The ",{"type":28,"tag":49,"props":694,"children":696},{"className":695},[],[697],{"type":33,"value":698},"VkCommandPool",{"type":33,"value":700}," that ",{"type":28,"tag":49,"props":702,"children":704},{"className":703},[],[705],{"type":33,"value":90},{"type":33,"value":707}," was allocated from ",{"type":28,"tag":405,"props":709,"children":710},{"type":407},[],{"type":33,"value":712}," support graphics, compute, decode, or encode operations",{"type":28,"tag":395,"props":714,"children":716},{"name":715},"VUID-vkCmdEndQuery-commonparent",[717],{"type":28,"tag":29,"props":718,"children":719},{},[720,722,727,729,734,735,738,740],{"type":33,"value":721},"Both of ",{"type":28,"tag":49,"props":723,"children":725},{"className":724},[],[726],{"type":33,"value":90},{"type":33,"value":728},", and ",{"type":28,"tag":49,"props":730,"children":732},{"className":731},[],[733],{"type":33,"value":109},{"type":33,"value":430},{"type":28,"tag":405,"props":736,"children":737},{"type":407},[],{"type":33,"value":739}," have been created, allocated, or retrieved from the same ",{"type":28,"tag":321,"props":741,"children":743},{"href":742},"/man/VkDevice",[744],{"type":33,"value":745},"VkDevice",{"type":28,"tag":747,"props":748,"children":750},"validity-box",{"name":749},"Host Synchronization",[751],{"type":28,"tag":256,"props":752,"children":753},{},[754,770],{"type":28,"tag":260,"props":755,"children":756},{},[757,759,764,765,768],{"type":33,"value":758},"Host access to ",{"type":28,"tag":49,"props":760,"children":762},{"className":761},[],[763],{"type":33,"value":90},{"type":33,"value":430},{"type":28,"tag":405,"props":766,"children":767},{"type":407},[],{"type":33,"value":769}," be externally synchronized",{"type":28,"tag":260,"props":771,"children":772},{},[773,775,780,781,786,787,790],{"type":33,"value":774},"Host access to the ",{"type":28,"tag":49,"props":776,"children":778},{"className":777},[],[779],{"type":33,"value":698},{"type":33,"value":700},{"type":28,"tag":49,"props":782,"children":784},{"className":783},[],[785],{"type":33,"value":90},{"type":33,"value":707},{"type":28,"tag":405,"props":788,"children":789},{"type":407},[],{"type":33,"value":791}," be externally synchronized\n::",{"type":28,"tag":793,"props":794,"children":795},"style",{},[796],{"type":33,"value":797},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":46,"searchDepth":78,"depth":78,"links":799},[],"markdown",1725732605132]