Panda3D
|
00001 // Filename: interrogateManifest.I 00002 // Created by: drose (11Aug00) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) Carnegie Mellon University. All rights reserved. 00008 // 00009 // All use of this software is subject to the terms of the revised BSD 00010 // license. You should have received a copy of this license along 00011 // with this source code in a file named "LICENSE." 00012 // 00013 //////////////////////////////////////////////////////////////////// 00014 00015 00016 //////////////////////////////////////////////////////////////////// 00017 // Function: InterrogateManifest::Constructor 00018 // Access: Public 00019 // Description: 00020 //////////////////////////////////////////////////////////////////// 00021 INLINE InterrogateManifest:: 00022 InterrogateManifest(InterrogateModuleDef *def) : 00023 InterrogateComponent(def) 00024 { 00025 _flags = 0; 00026 _int_value = 0; 00027 _type = 0; 00028 _getter = 0; 00029 } 00030 00031 //////////////////////////////////////////////////////////////////// 00032 // Function: InterrogateManifest::Copy Constructor 00033 // Access: Public 00034 // Description: 00035 //////////////////////////////////////////////////////////////////// 00036 INLINE InterrogateManifest:: 00037 InterrogateManifest(const InterrogateManifest ©) { 00038 (*this) = copy; 00039 } 00040 00041 //////////////////////////////////////////////////////////////////// 00042 // Function: InterrogateManifest::Copy Assignment Operator 00043 // Access: Public 00044 // Description: 00045 //////////////////////////////////////////////////////////////////// 00046 INLINE void InterrogateManifest:: 00047 operator = (const InterrogateManifest ©) { 00048 InterrogateComponent::operator = (copy); 00049 _flags = copy._flags; 00050 _definition = copy._definition; 00051 _int_value = copy._int_value; 00052 _type = copy._type; 00053 _getter = copy._getter; 00054 } 00055 00056 00057 //////////////////////////////////////////////////////////////////// 00058 // Function: InterrogateManifest::get_definition 00059 // Access: Public 00060 // Description: 00061 //////////////////////////////////////////////////////////////////// 00062 INLINE const string &InterrogateManifest:: 00063 get_definition() const { 00064 return _definition; 00065 } 00066 00067 //////////////////////////////////////////////////////////////////// 00068 // Function: InterrogateManifest::has_type 00069 // Access: Public 00070 // Description: 00071 //////////////////////////////////////////////////////////////////// 00072 INLINE bool InterrogateManifest:: 00073 has_type() const { 00074 return (_flags & F_has_type) != 0; 00075 } 00076 00077 //////////////////////////////////////////////////////////////////// 00078 // Function: InterrogateManifest::get_type 00079 // Access: Public 00080 // Description: 00081 //////////////////////////////////////////////////////////////////// 00082 INLINE TypeIndex InterrogateManifest:: 00083 get_type() const { 00084 return _type; 00085 } 00086 00087 //////////////////////////////////////////////////////////////////// 00088 // Function: InterrogateManifest::has_getter 00089 // Access: Public 00090 // Description: 00091 //////////////////////////////////////////////////////////////////// 00092 INLINE bool InterrogateManifest:: 00093 has_getter() const { 00094 return (_flags & F_has_getter) != 0; 00095 } 00096 00097 //////////////////////////////////////////////////////////////////// 00098 // Function: InterrogateManifest::get_getter 00099 // Access: Public 00100 // Description: 00101 //////////////////////////////////////////////////////////////////// 00102 INLINE FunctionIndex InterrogateManifest:: 00103 get_getter() const { 00104 return _getter; 00105 } 00106 00107 //////////////////////////////////////////////////////////////////// 00108 // Function: InterrogateManifest::has_int_value 00109 // Access: Public 00110 // Description: 00111 //////////////////////////////////////////////////////////////////// 00112 INLINE bool InterrogateManifest:: 00113 has_int_value() const { 00114 return (_flags & F_has_int_value) != 0; 00115 } 00116 00117 //////////////////////////////////////////////////////////////////// 00118 // Function: InterrogateManifest::get_int_value 00119 // Access: Public 00120 // Description: 00121 //////////////////////////////////////////////////////////////////// 00122 INLINE int InterrogateManifest:: 00123 get_int_value() const { 00124 return _int_value; 00125 } 00126 00127 00128 INLINE ostream & 00129 operator << (ostream &out, const InterrogateManifest &manifest) { 00130 manifest.output(out); 00131 return out; 00132 } 00133 00134 INLINE istream & 00135 operator >> (istream &in, InterrogateManifest &manifest) { 00136 manifest.input(in); 00137 return in; 00138 }