00001
00002
00003 #ifndef OSL_MISC_CARRAY3D_H
00004 #define OSL_MISC_CARRAY3D_H
00005
00006 #include "osl/misc/carray.h"
00007 #include "osl/misc/carray2d.h"
00008 namespace osl
00009 {
00010 namespace misc
00011 {
00012 template <class T, size_t Capacity1, size_t Capacity2, size_t Capacity3>
00013 struct CArray3d
00014 : public CArray<CArray2d<T,Capacity2,Capacity3>,Capacity1>
00015 {
00016 typedef CArray<CArray2d<T,Capacity2,Capacity3>,Capacity1> base_t;
00017 void fill(T value=T()){
00018 for (size_t i=0; i<Capacity1; i++)
00019 base_t::operator[](i).fill(value);
00020 }
00021 };
00022 }
00023 using misc::CArray3d;
00024 }
00025
00026 #endif
00027
00028
00029
00030