xsi_renderhairaccessor.h Source File
 
 
 
xsi_renderhairaccessor.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSIRENDERHAIRACCESSOR_H__
00018 #define __XSIRENDERHAIRACCESSOR_H__
00019 
00020 #include <xsi_base.h>
00021 #include <xsi_status.h>
00022 
00023 namespace XSI {
00024 
00025 class CFloatArray;
00026 class CLongArray;
00027 
00028 //*****************************************************************************
00190 //*****************************************************************************
00191 
00192 class SICPPSDKDECL CRenderHairAccessor : public CBase
00193 {
00194 public:
00196         CRenderHairAccessor();
00197 
00199         ~CRenderHairAccessor();
00200 
00204         CRenderHairAccessor(const CRef& in_ref);
00205 
00209         CRenderHairAccessor(const CRenderHairAccessor& in_obj);
00210 
00215         bool IsA( siClassID in_ClassID) const;
00216 
00220         siClassID GetClassID() const;
00221 
00227         CRenderHairAccessor& operator=(const CRenderHairAccessor& in_obj);
00228 
00234         CRenderHairAccessor& operator=(const CRef& in_ref);
00235 
00247         bool Next();
00248 
00253         CStatus Reset();
00254 
00264         LONG GetRequestedChunkSize() const;
00265 
00273         LONG GetRequestedHairCount() const;
00274 
00282         LONG GetChunkHairCount() const;
00283 
00293         CStatus GetVerticesCount(CLongArray& out_values) const;
00294 
00306         CStatus GetVertexPositions(CFloatArray& out_values) const;
00307 
00319         CStatus GetVertexRadiusValues(CFloatArray& out_values) const;
00320 
00327         CStatus GetHairSurfaceNormalValues(CFloatArray &out_values) const;
00328 
00333         LONG GetUVCount() const;
00334 
00339         LONG GetVertexColorCount() const;
00340 
00345         LONG GetWeightMapCount() const;
00346 
00354         CString GetUVName( LONG in_nIdx ) const;
00355 
00363         CString GetVertexColorName( LONG in_nIdx ) const;
00364 
00372         CString GetWeightMapName( LONG in_nIdx ) const;
00373 
00387         CStatus GetUVValues( LONG in_nIdx, CFloatArray& out_values ) const;
00388 
00402         CStatus GetVertexColorValues( LONG in_nIdx, CFloatArray& out_values ) const;
00403 
00417         CStatus GetWeightMapValues( LONG in_nIdx, CFloatArray& out_values ) const;
00418 
00419         private:
00420         CRenderHairAccessor * operator&() const;
00421         CRenderHairAccessor * operator&();
00422 };
00423 
00424 };
00425 #endif // __XSIRENDERHAIRACCESSOR_H__