122 |
}; |
}; |
123 |
|
|
124 |
template<class VobSeed> struct VobJNIGenerator { |
template<class VobSeed> struct VobJNIGenerator { |
125 |
|
string ntrans; |
126 |
|
|
127 |
std::string tclass(std::string name) { |
std::string tclass(std::string name) { |
128 |
static char buf[100]; |
return std::string("") + "Vob" + ntrans + "Maker<"+name+">"; |
|
sprintf(buf, "Vob%dMaker", VobSeed::NTrans); |
|
|
return std::string(buf) + "<"+name+">"; |
|
129 |
} |
} |
130 |
|
|
131 |
VobJNIGenerator(std::string name) { |
VobJNIGenerator(std::string name) { |
132 |
|
if(VobSeed::NTrans < 0) |
133 |
|
ntrans = "N"; |
134 |
|
else { |
135 |
|
static char buf[100]; |
136 |
|
sprintf(buf, "%d", VobSeed::NTrans); |
137 |
|
ntrans = buf; |
138 |
|
} |
139 |
|
|
140 |
std::cout << "\t" << name << "\n" ; |
std::cout << "\t" << name << "\n" ; |
141 |
VobJavaParamList pl; |
VobJavaParamList pl; |
142 |
VobSeed().params(pl); |
VobSeed().params(pl); |
148 |
makerName + "<"+name +">"; |
makerName + "<"+name +">"; |
149 |
|
|
150 |
VOB_JAVASTREAM << "static public class "<<name<< |
VOB_JAVASTREAM << "static public class "<<name<< |
151 |
" extends GL.Renderable"<<VobSeed::NTrans<<"JavaObject "<< |
" extends GL.Renderable"<<ntrans<<"JavaObject "<< |
152 |
" { private "<<name<<"(int i) { super(i); }\n" |
" { private "<<name<<"(int i) { super(i); }\n" |
153 |
<<pl.javaStructS<< |
<<pl.javaStructS<< |
154 |
"}\n"; |
"}\n"; |
175 |
<< pl.jniStructCodeS <<"\n" |
<< pl.jniStructCodeS <<"\n" |
176 |
<< makerName <<" *p_ = new " << makerName <<";\n" |
<< makerName <<" *p_ = new " << makerName <<";\n" |
177 |
<< "_.env_ = env_; p_->params(_);\n" |
<< "_.env_ = env_; p_->params(_);\n" |
178 |
<< "return vob"<<VobSeed::NTrans<<"s.add(p_);\n" |
<< "return vob"<<ntrans<<"s.add(p_);\n" |
179 |
<<"\n}\n"; |
<<"\n}\n"; |
180 |
VOB_JNISTREAM << "\n" ; |
VOB_JNISTREAM << "\n" ; |
181 |
} |
} |