1 /*
2     Copyright (c) 2008-2009 NetAllied Systems GmbH
3 
4     This file is part of MayaDataModel.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 #ifndef __MayaDM_FACADE_H__
11 #define __MayaDM_FACADE_H__
12 #include "MayaDMTypes.h"
13 #include "MayaDMConnectables.h"
14 #include "MayaDMDependNode.h"
15 namespace MayaDM
16 {
17 class Facade : public DependNode
18 {
19 public:
20 public:
21 
Facade()22 	Facade():DependNode(){}
23 	Facade(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24 		:DependNode(file, name, parent, "facade", shared, create){}
~Facade()25 	virtual ~Facade(){}
26 
setSharedLibName(const string & sln)27 	void setSharedLibName(const string& sln)
28 	{
29 		if(sln == "NULL") return;
30 		fprintf(mFile,"\tsetAttr \".sln\" -type \"string\" ");
31 		sln.write(mFile);
32 		fprintf(mFile,";\n");
33 	}
setUiName(const string & uin)34 	void setUiName(const string& uin)
35 	{
36 		if(uin == "NULL") return;
37 		fprintf(mFile,"\tsetAttr \".uin\" -type \"string\" ");
38 		uin.write(mFile);
39 		fprintf(mFile,";\n");
40 	}
setKeyWords(const string & kwds)41 	void setKeyWords(const string& kwds)
42 	{
43 		if(kwds == "NULL") return;
44 		fprintf(mFile,"\tsetAttr \".kwds\" -type \"string\" ");
45 		kwds.write(mFile);
46 		fprintf(mFile,";\n");
47 	}
setUiScript(const string & uis)48 	void setUiScript(const string& uis)
49 	{
50 		if(uis == "NULL") return;
51 		fprintf(mFile,"\tsetAttr \".uis\" -type \"string\" ");
52 		uis.write(mFile);
53 		fprintf(mFile,";\n");
54 	}
setUniqueID(const string & uid)55 	void setUniqueID(const string& uid)
56 	{
57 		if(uid == "NULL") return;
58 		fprintf(mFile,"\tsetAttr \".uid\" -type \"string\" ");
59 		uid.write(mFile);
60 		fprintf(mFile,";\n");
61 	}
getSharedLibName()62 	void getSharedLibName()const
63 	{
64 		fprintf(mFile,"\"%s.sln\"",mName.c_str());
65 	}
getConnection()66 	void getConnection()const
67 	{
68 		fprintf(mFile,"\"%s.c\"",mName.c_str());
69 	}
getUiName()70 	void getUiName()const
71 	{
72 		fprintf(mFile,"\"%s.uin\"",mName.c_str());
73 	}
getKeyWords()74 	void getKeyWords()const
75 	{
76 		fprintf(mFile,"\"%s.kwds\"",mName.c_str());
77 	}
getUiScript()78 	void getUiScript()const
79 	{
80 		fprintf(mFile,"\"%s.uis\"",mName.c_str());
81 	}
getUniqueID()82 	void getUniqueID()const
83 	{
84 		fprintf(mFile,"\"%s.uid\"",mName.c_str());
85 	}
86 protected:
87 	Facade(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true)
DependNode(file,name,parent,nodeType,shared,create)88 		:DependNode(file, name, parent, nodeType, shared, create) {}
89 
90 };
91 }//namespace MayaDM
92 #endif//__MayaDM_FACADE_H__
93