void wbem::server::BaseServerFactory::toInstance(core::system::SystemInfo &hostInfo, wbem::framework::Instance &instance, wbem::framework::attribute_names_t attributes) { LogEnterExit logging(__FUNCTION__, __FILE__, __LINE__); ADD_ATTRIBUTE(instance, attributes, OSNAME_KEY, framework::STR, hostInfo.getOsName()); ADD_ATTRIBUTE(instance, attributes, OSVERSION_KEY, framework::STR, hostInfo.getOsVersion()); ADD_ATTRIBUTE(instance, attributes, LOGLEVEL_KEY, framework::UINT16, hostInfo.getLogLevel()); framework::UINT16_LIST dedicatedValue; dedicatedValue.push_back(1u); // "unknown" ADD_ATTRIBUTE(instance, attributes, DEDICATED_KEY, framework::UINT16_LIST, dedicatedValue); wbem::framework::UINT16_LIST hostOpStatusList = hostToOpStatus(hostInfo.getMixedSku(), hostInfo.getSkuViolation()); ADD_ATTRIBUTE(instance, attributes, OPERATIONALSTATUS_KEY, framework::UINT16_LIST, hostOpStatusList); }
MStatus NeuronForMayaDevice::createOculusAttribute( MObject& obj, MObject& objX, MObject& objY, MObject& objZ, const MString& longName, const MString& shortName, bool hidden ) { MStatus status; MFnNumericAttribute numAttr; objX = numAttr.create( longName+"X", shortName+"X", MFnNumericData::kDouble, 0.0, &status); MCHECKERROR(status, "create " + longName+"X"); objY = numAttr.create( longName+"Y", shortName+"Y", MFnNumericData::kDouble, 0.0, &status); MCHECKERROR(status, "create " + longName+"Y"); objZ = numAttr.create( longName+"Z", shortName+"Z", MFnNumericData::kDouble, 0.0, &status); MCHECKERROR(status, "create " + longName+"Z"); obj = numAttr.create(longName, shortName, objX, objY, objZ, &status); MCHECKERROR(status, "create "+ longName); numAttr.setHidden(hidden); ADD_ATTRIBUTE(obj); return MS::kSuccess; }
void ChangeJournalWatcher::logEntry(const std::wstring &vol, const UsnInt *UsnRecord) { #define ADD_REASON(x) { if (UsnRecord->Reason & x){ if(!reason.empty()) reason+=L"|"; reason+=L#x; } } std::wstring reason; ADD_REASON(USN_REASON_DATA_OVERWRITE); ADD_REASON(USN_REASON_DATA_EXTEND); ADD_REASON(USN_REASON_DATA_TRUNCATION); ADD_REASON(USN_REASON_NAMED_DATA_OVERWRITE); ADD_REASON(USN_REASON_NAMED_DATA_EXTEND); ADD_REASON(USN_REASON_NAMED_DATA_TRUNCATION); ADD_REASON(USN_REASON_FILE_CREATE); ADD_REASON(USN_REASON_FILE_DELETE); ADD_REASON(USN_REASON_EA_CHANGE); ADD_REASON(USN_REASON_SECURITY_CHANGE); ADD_REASON(USN_REASON_RENAME_OLD_NAME); ADD_REASON(USN_REASON_RENAME_NEW_NAME); ADD_REASON(USN_REASON_INDEXABLE_CHANGE); ADD_REASON(USN_REASON_BASIC_INFO_CHANGE); ADD_REASON(USN_REASON_HARD_LINK_CHANGE); ADD_REASON(USN_REASON_COMPRESSION_CHANGE); ADD_REASON(USN_REASON_ENCRYPTION_CHANGE); ADD_REASON(USN_REASON_OBJECT_ID_CHANGE); ADD_REASON(USN_REASON_REPARSE_POINT_CHANGE); ADD_REASON(USN_REASON_STREAM_CHANGE); ADD_REASON(USN_REASON_TRANSACTED_CHANGE); ADD_REASON(USN_REASON_CLOSE); std::wstring attributes; #define ADD_ATTRIBUTE(x) { if(UsnRecord->attributes & x){ if(!attributes.empty()) attributes+=L"|"; attributes+=L#x; } } ADD_ATTRIBUTE(FILE_ATTRIBUTE_READONLY); ADD_ATTRIBUTE(FILE_ATTRIBUTE_HIDDEN); ADD_ATTRIBUTE(FILE_ATTRIBUTE_SYSTEM); ADD_ATTRIBUTE(FILE_ATTRIBUTE_DIRECTORY); ADD_ATTRIBUTE(FILE_ATTRIBUTE_ARCHIVE); ADD_ATTRIBUTE(FILE_ATTRIBUTE_DEVICE); ADD_ATTRIBUTE(FILE_ATTRIBUTE_NORMAL); ADD_ATTRIBUTE(FILE_ATTRIBUTE_TEMPORARY); ADD_ATTRIBUTE(FILE_ATTRIBUTE_SPARSE_FILE); ADD_ATTRIBUTE(FILE_ATTRIBUTE_REPARSE_POINT); ADD_ATTRIBUTE(FILE_ATTRIBUTE_COMPRESSED); ADD_ATTRIBUTE(FILE_ATTRIBUTE_OFFLINE); ADD_ATTRIBUTE(FILE_ATTRIBUTE_NOT_CONTENT_INDEXED); ADD_ATTRIBUTE(FILE_ATTRIBUTE_ENCRYPTED); ADD_ATTRIBUTE(FILE_ATTRIBUTE_VIRTUAL); std::wstring lstr=L"Change: "+vol+L" [fn="+UsnRecord->Filename+L",reason="+reason+L",attributes="+ attributes+L",USN="+convert(UsnRecord->Usn)+L"]"; Server->Log(lstr, LL_DEBUG); }
MStatus NuiMayaDeviceGrabber::initialize() // // Description: // This method is called to create and initialize all of the attributes // and attribute dependencies for this node type. This is only called // once when the node type is registered with Maya. // // Return Values: // MS::kSuccess // MS::kFailure // { // This sample creates a single input float attribute and a single // output float attribute. // MFnNumericAttribute nAttr; MFnTypedAttribute typedAttr; MFnUnitAttribute unitAttr; MFnEnumAttribute enumAttr; MStatus stat; aTime = unitAttr.create( "time", "tm", MFnUnitAttribute::kTime, 0.0, &stat ); stat = addAttribute( aTime ); if (!stat) { stat.perror("addAttribute time"); return stat;} aUseCache = nAttr.create( "useCache", "uc", MFnNumericData::kBoolean, false ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); // Attribute is keyable and will show up in the channel box stat = addAttribute( aUseCache ); if (!stat) { stat.perror("addAttribute"); return stat;} aDeviceOn = nAttr.create( "deviceOn", "do", MFnNumericData::kBoolean, false ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); // Attribute is keyable and will show up in the channel box stat = addAttribute( aDeviceOn ); if (!stat) { stat.perror("addAttribute"); return stat;} aDeviceMode = enumAttr.create( "deviceMode", "dm", NuiRGBDDeviceController::EDeviceMode_VertexColorCamera, &stat ); if (!stat) { stat.perror("create DeviceMode attribute"); return stat;} stat = enumAttr.addField( "Depth,Color", NuiRGBDDeviceController::EDeviceMode_DepthColor ); if (!stat) { stat.perror("add enum type DepthColor"); return stat;} stat = enumAttr.addField( "Depth,Color,Player", NuiRGBDDeviceController::EDeviceMode_VertexColorCamera ); if (!stat) { stat.perror("add enum type DepthColorPlayer"); return stat;} stat = enumAttr.addField( "Depth,Color,Skeleton", NuiRGBDDeviceController::EDeviceMode_VertexColorSkeleton ); if (!stat) { stat.perror("add enum type DepthColorSkeleton"); return stat;} stat = enumAttr.addField( "Depth,Color,Skeleton,Face", NuiRGBDDeviceController::EDeviceMode_VertexColorSkeletonFace ); if (!stat) { stat.perror("add enum type DepthColorSkeletonFace"); return stat;} stat = enumAttr.addField( "Depth,Color,Skeleton,Gesture", NuiRGBDDeviceController::EDeviceMode_VertexColorSkeletonGesture ); if (!stat) { stat.perror("add enum type DepthColorSkeletonGesture"); return stat;} stat = enumAttr.addField( "Color", NuiRGBDDeviceController::EDeviceMode_Color ); if (!stat) { stat.perror("add enum type Color"); return stat;} stat = enumAttr.addField( "Depth", NuiRGBDDeviceController::EDeviceMode_Vertex ); if (!stat) { stat.perror("add enum type Depth"); return stat;} stat = enumAttr.addField( "Skeleton", NuiRGBDDeviceController::EDeviceMode_Skeleton ); if (!stat) { stat.perror("add enum type Skeleton"); return stat;} stat = enumAttr.addField( "Fusion", NuiRGBDDeviceController::EDeviceMode_Fusion ); if (!stat) { stat.perror("add enum type fusion"); return stat;} CHECK_MSTATUS( enumAttr.setHidden( false ) ); CHECK_MSTATUS( enumAttr.setKeyable( false ) ); stat = addAttribute( aDeviceMode ); if (!stat) { stat.perror("addAttribute"); return stat;} aNearMode = nAttr.create( "nearMode", "ne", MFnNumericData::kBoolean, false ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); // Attribute is keyable and will show up in the channel box stat = addAttribute( aNearMode ); if (!stat) { stat.perror("addAttribute"); return stat;} aElevationAngle = nAttr.create( "elevationAngle", "ea", MFnNumericData::kInt, 0 ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); nAttr.setKeyable(true); nAttr.setMin(-27); nAttr.setMax(27); // Attribute is keyable and will show up in the channel box stat = addAttribute( aElevationAngle ); if (!stat) { stat.perror("addAttribute"); return stat;} aPreviewerOn = nAttr.create( "previewerOn", "po", MFnNumericData::kBoolean, false ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); // Attribute is keyable and will show up in the channel box stat = addAttribute( aPreviewerOn ); if (!stat) { stat.perror("addAttribute"); return stat;} aKinFuOn = nAttr.create( "fusionOn", "fo", MFnNumericData::kBoolean, false ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); // Attribute is keyable and will show up in the channel box stat = addAttribute( aKinFuOn ); if (!stat) { stat.perror("addAttribute"); return stat;} aVolumeVoxelSize = nAttr.create( "volumeVoxelSize", "vvs", MFnNumericData::kFloat, 0.01f ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); nAttr.setKeyable(true); nAttr.setMin(0.005f); nAttr.setMax(0.02f); // Attribute is keyable and will show up in the channel box stat = addAttribute( aVolumeVoxelSize ); if (!stat) { stat.perror("addAttribute"); return stat;} aShowInvalid = nAttr.create("showInvalid", "siv", MFnNumericData::kBoolean, false, &stat); MCHECKERROR( stat, "create showInvalid attribute" ) nAttr.setKeyable(true); ADD_ATTRIBUTE( aShowInvalid ); aShowOnlyBody = nAttr.create("showOnlyBody", "sc", MFnNumericData::kBoolean, false, &stat); MCHECKERROR( stat, "create showOnlyBody attribute" ) nAttr.setKeyable(true); ADD_ATTRIBUTE( aShowOnlyBody ); aShowMesh = nAttr.create("showMesh", "sm", MFnNumericData::kBoolean, false, &stat); MCHECKERROR( stat, "create showMesh attribute" ) nAttr.setKeyable(true); ADD_ATTRIBUTE( aShowMesh ); aMinDepth = nAttr.create( "nearPlane", "np", MFnNumericData::kShort, 400 ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); nAttr.setKeyable(true); nAttr.setMin(400); nAttr.setMax(4500); // Attribute is keyable and will show up in the channel box stat = addAttribute( aMinDepth ); if (!stat) { stat.perror("addAttribute"); return stat;} aMaxDepth = nAttr.create( "farPlane", "fp", MFnNumericData::kShort, 4200 ); // Attribute will be written to files when this type of node is stored nAttr.setStorable(true); nAttr.setKeyable(true); nAttr.setMin(400); nAttr.setMax(4500); // Attribute is keyable and will show up in the channel box stat = addAttribute( aMaxDepth ); if (!stat) { stat.perror("addAttribute"); return stat;} // ----------------------- OUTPUTS ------------------------- aOutputMappable = typedAttr.create( "outputPointCloud", "opc", NuiMayaMappableData::id, MObject::kNullObj, &stat ); if (!stat) { stat.perror("create outputPointCloud attribute"); return stat;} typedAttr.setWritable( false ); typedAttr.setStorable(false); stat = addAttribute( aOutputMappable ); if (!stat) { stat.perror("addAttribute"); return stat;} aOutputSkeleton = typedAttr.create( "outputSkeleton", "osk", NuiMayaSkeletonData::id, MObject::kNullObj, &stat ); if (!stat) { stat.perror("create outputSkeleton attribute"); return stat;} typedAttr.setWritable( false ); typedAttr.setStorable(false); stat = addAttribute( aOutputSkeleton ); if (!stat) { stat.perror("addAttribute"); return stat;} aOutputMesh = typedAttr.create( "outputMesh", "om", MFnData::kMesh, MObject::kNullObj, &stat ); MCHECKERROR( stat, "create outputSurface attribute" ) typedAttr.setWritable( false ); ADD_ATTRIBUTE( aOutputMesh ); aOutputGesture = typedAttr.create( "outputGesture", "ogs", NuiMayaGestureData::id, MObject::kNullObj, &stat ); if (!stat) { stat.perror("create outputGesture attribute"); return stat;} typedAttr.setWritable( false ); typedAttr.setStorable(false); stat = addAttribute( aOutputGesture ); if (!stat) { stat.perror("addAttribute"); return stat;} aOutputFacialModel = typedAttr.create( "outputFacialModel", "ofm", NuiMayaFacialModelData::id, MObject::kNullObj, &stat ); if (!stat) { stat.perror("create outputFacialModel attribute"); return stat;} typedAttr.setWritable( false ); stat = addAttribute( aOutputFacialModel ); if (!stat) { stat.perror("addAttribute"); return stat;} aFaceRotateX = nAttr.create( "faceRotateX", "frX", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create face rotateX attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aFaceRotateY = nAttr.create( "faceRotateY", "frY", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create face rotateY attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aFaceRotateZ = nAttr.create( "faceRotateZ", "frZ", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create rotateZ attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aFaceRotate = nAttr.create( "faceRotate", "fr", aFaceRotateX, aFaceRotateY, aFaceRotateZ, &stat ); if (!stat) { stat.perror("create face rotate attribute"); return stat;} nAttr.setDefault(0.0f, 0.0f, 0.0f); nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); stat = addAttribute( aFaceRotate ); if (!stat) { stat.perror("addAttribute"); return stat;} aCameraRotateX = nAttr.create( "cameraRotateX", "crX", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create cameraRotateX attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraRotateY = nAttr.create( "cameraRotateY", "crY", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create rotateY attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraRotateZ = nAttr.create( "cameraRotateZ", "crZ", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create rotateZ attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraRotate = nAttr.create( "cameraRotate", "cr", aCameraRotateX, aCameraRotateY, aCameraRotateZ, &stat ); if (!stat) { stat.perror("create cameraRotate attribute"); return stat;} nAttr.setDefault(0.0f, 0.0f, 0.0f); nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); stat = addAttribute( aCameraRotate ); if (!stat) { stat.perror("addAttribute"); return stat;} aCameraTranslateX = nAttr.create( "cameraTranslateX", "ctX", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create cameraTranslateX attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraTranslateY = nAttr.create( "cameraTranslateY", "ctY", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create cameraTranslateY attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraTranslateZ = nAttr.create( "cameraTranslateZ", "ctZ", MFnNumericData::kDouble, 0.0, &stat ); if (!stat) { stat.perror("create cameraTranslateZ attribute"); return stat;} nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); aCameraTranslate = nAttr.create( "cameraTranslate", "ct", aCameraTranslateX, aCameraTranslateY, aCameraTranslateZ, &stat ); if (!stat) { stat.perror("create cameraTranslate attribute"); return stat;} nAttr.setDefault(0.0f, 0.0f, 0.0f); nAttr.setReadable( true ); nAttr.setWritable( false ); nAttr.setStorable(true); stat = addAttribute( aCameraTranslate ); if (!stat) { stat.perror("addAttribute"); return stat;} // Set up a dependency between the input and the output. This will cause // the output to be marked dirty when the input changes. The output will // then be recomputed the next time the value of the output is requested. // stat = attributeAffects( aTime, aOutputMappable ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aOutputSkeleton ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aOutputFacialModel ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aFaceRotateX ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aFaceRotateY ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aFaceRotateZ ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aFaceRotate ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraRotateX ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraRotateY ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraRotateZ ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraRotate ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraTranslateX ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraTranslateY ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraTranslateZ ); if (!stat) { stat.perror("attributeAffects"); return stat;} stat = attributeAffects( aTime, aCameraTranslate ); if (!stat) { stat.perror("attributeAffects"); return stat;} return MS::kSuccess; }