1 #include "motormanager.h"
2 #include "motorconfiguration.h"
8 motormanager::motormanager() {
11 motormanager::~motormanager() {
14 vector
<projectname
> motormanager::getprojectlist() {
17 vector
<projectname
> result
;
20 if(d
= opendir(conf
.getprojectdir().c_str())) {
21 while(ent
= readdir(d
)) {
22 pname
= projectname();
23 if(pname
.load(ent
->d_name
)) {
24 result
.push_back(pname
);
31 sort(result
.begin(), result
.end());
35 INT
motormanager::addtemplate(const char *file
, const struct stat
*sb
, INT flag
) {
37 string tname
= file
, buf
;
40 if(pos
= tname
.find("/templates/")) {
41 tname
.erase(0, pos
+11);
43 tname
= trailcut(leadcut(tname
, "/"), "/");
44 buf
= getrword(buf
= tname
, "/");
47 buf
= justfname(file
);
48 if(buf
.substr(0, 8) != "Makefile")
49 if(find(manager
.container
.begin(), manager
.container
.end(), tname
)
50 == manager
.container
.end())
51 manager
.container
.push_back(tname
);
58 vector
<string
> motormanager::gettemplatelist() {
60 ftw(conf
.gettemplatedir().c_str(), &addtemplate
, 5);
61 sort(container
.begin(), container
.end());
65 vector
<string
> motormanager::getvcslist() {
72 for(i
= 0; i
< 2; i
++) {
76 dname
= conf
.getmotordir();
79 if(d
= opendir(dname
.c_str())) {
80 while(e
= readdir(d
)) {
83 if((dp
= fname
.find(".")) != -1)
84 if(fname
.substr(dp
+1) == "vcsrc") {
86 if(find(r
.begin(), r
.end(), fname
) == r
.end())