Home | History | Annotate | Download | only in nine

Lines Matching refs:This

5  * copy of this software and associated documentation files (the "Software"),
11 * The above copyright notice and this permission notice (including the next
31 NineVolumeTexture9_ctor( struct NineVolumeTexture9 *This,
39 struct pipe_resource *info = &This->base.base.info;
46 DBG("This=%p pParams=%p Width=%u Height=%u Depth=%u Levels=%u "
48 This, pParams, Width, Height, Depth, Levels,
101 "but this is unimplemented\n");
103 This->base.pstype = 3;
105 hr = NineBaseTexture9_ctor(&This->base, pParams, NULL,
110 This->volumes = CALLOC(This->base.level_count, sizeof(*This->volumes));
111 if (!This->volumes)
118 for (l = 0; l < This->base.level_count; ++l) {
123 hr = NineVolume9_new(This->base.base.base.device, NineUnknown(This),
124 This->base.base.resource, l,
125 &voldesc, &This->volumes[l]);
131 NineVolumeTexture9_AddDirtyBox(This, NULL);
137 NineVolumeTexture9_dtor( struct NineVolumeTexture9 *This )
141 DBG("This=%p\n", This);
143 if (This->volumes) {
144 for (l = 0; l < This->base.level_count; ++l)
145 if (This->volumes[l])
146 NineUnknown_Destroy(&This->volumes[l]->base);
147 FREE(This->volumes);
150 NineBaseTexture9_dtor(&This->base);
154 NineVolumeTexture9_GetLevelDesc( struct NineVolumeTexture9 *This,
158 user_assert(Level < This->base.level_count, D3DERR_INVALIDCALL);
160 *pDesc = This->volumes[Level]->desc;
166 NineVolumeTexture9_GetVolumeLevel( struct NineVolumeTexture9 *This,
170 user_assert(Level < This->base.level_count, D3DERR_INVALIDCALL);
172 NineUnknown_AddRef(NineUnknown(This->volumes[Level]));
173 *ppVolumeLevel = (IDirect3DVolume9 *)This->volumes[Level];
179 NineVolumeTexture9_LockBox( struct NineVolumeTexture9 *This,
185 DBG("This=%p Level=%u pLockedVolume=%p pBox=%p Flags=%d\n",
186 This, Level, pLockedVolume, pBox, Flags);
188 user_assert(Level < This->base.level_count, D3DERR_INVALIDCALL);
190 return NineVolume9_LockBox(This->volumes[Level], pLockedVolume, pBox,
195 NineVolumeTexture9_UnlockBox( struct NineVolumeTexture9 *This,
198 DBG("This=%p Level=%u\n", This, Level);
200 user_assert(Level < This->base.level_count, D3DERR_INVALIDCALL);
202 return NineVolume9_UnlockBox(This->volumes[Level]);
206 NineVolumeTexture9_AddDirtyBox( struct NineVolumeTexture9 *This,
209 DBG("This=%p pDirtybox=%p\n", This, pDirtyBox);
211 if (This->base.base.pool == D3DPOOL_DEFAULT) {
215 if (This->base.base.pool == D3DPOOL_MANAGED) {
216 This->base.managed.dirty = TRUE;
217 BASETEX_REGISTER_UPDATE(&This->base);
221 This->dirty_box.x = 0;
222 This->dirty_box.y = 0;
223 This->dirty_box.z = 0;
224 This->dirty_box.width = This->base.base.info.width0;
225 This->dirty_box.height = This->base.base.info.height0;
226 This->dirty_box.depth = This->base.base.info.depth0;
228 if (This->dirty_box.width == 0) {
229 d3dbox_to_pipe_box(&This->dirty_box, pDirtyBox);
233 u_box_union_3d(&This->dirty_box, &This->dirty_box, &box);
235 This->dirty_box.x = MAX2(This->dirty_box.x, 0);
236 This->dirty_box.y = MAX2(This->dirty_box.y, 0);
237 This->dirty_box.z = MAX2(This->dirty_box.z, 0);
238 This->dirty_box.width = MIN2(This->dirty_box.width,
239 This->base.base.info.width0 - This->dirty_box.x);
240 This->dirty_box.height = MIN2(This->dirty_box.height,
241 This->base.base.info.height0 - This->dirty_box.y);
242 This->dirty_box.depth = MIN2(This->dirty_box.depth,
243 This->base.base.info.depth0 - This->dirty_box.z);