Lines Matching defs:dmsScreen

520 bool AbstractScreenGroup::GetRSDisplayNodeConfig(sptr<AbstractScreen>& dmsScreen, struct RSDisplayNodeConfig& config)

522 if (dmsScreen == nullptr) {
523 WLOGE("dmsScreen is nullptr.");
526 config = { dmsScreen->rsId_ };
533 if (GetChildCount() == 0 || mirrorScreenId_ == dmsScreen->dmsId_) {
552 mirrorScreenId_, dmsScreen->rsId_, nodeId);
553 config = {dmsScreen->rsId_, true, nodeId};
563 bool AbstractScreenGroup::AddChild(sptr<AbstractScreen>& dmsScreen, Point& startPoint)
565 if (dmsScreen == nullptr) {
566 WLOGE("AddChild, dmsScreen is nullptr.");
569 ScreenId screenId = dmsScreen->dmsId_;
573 if (dmsScreen->rsDisplayNode_ != nullptr && dmsScreen->type_ == ScreenType::REAL &&
577 WLOGE("AddChild, screenMap_ has dmsScreen:%{public}" PRIu64"", screenId);
582 if (!GetRSDisplayNodeConfig(dmsScreen, config)) {
585 if (dmsScreen->rsDisplayNode_ != nullptr && dmsScreen->type_ == ScreenType::REAL &&
588 dmsScreen->InitRSDefaultDisplayNode(config, startPoint);
590 dmsScreen->InitRSDisplayNode(config, startPoint);
591 dmsScreen->lastGroupDmsId_ = dmsScreen->groupDmsId_;
592 dmsScreen->groupDmsId_ = dmsId_;
593 screenMap_.insert(std::make_pair(screenId, dmsScreen));
612 bool AbstractScreenGroup::RemoveChild(sptr<AbstractScreen>& dmsScreen)
614 if (dmsScreen == nullptr) {
615 WLOGE("RemoveChild, dmsScreen is nullptr.");
618 ScreenId screenId = dmsScreen->dmsId_;
619 dmsScreen->lastGroupDmsId_ = dmsScreen->groupDmsId_;
620 dmsScreen->groupDmsId_ = SCREEN_ID_INVALID;
621 dmsScreen->startPoint_ = Point();
622 if (dmsScreen->rsDisplayNode_ != nullptr) {
623 dmsScreen->rsDisplayNode_->SetDisplayOffset(0, 0);
624 dmsScreen->rsDisplayNode_->RemoveFromTree();
629 dmsScreen->rsDisplayNode_ = nullptr;
632 dmsScreen->groupDmsId_, screenId);
636 bool AbstractScreenGroup::RemoveDefaultScreen(const sptr<AbstractScreen>& dmsScreen)
638 if (dmsScreen == nullptr) {
639 WLOGE("RemoveChild, dmsScreen is nullptr.");
642 ScreenId screenId = dmsScreen->dmsId_;
643 dmsScreen->lastGroupDmsId_ = dmsScreen->groupDmsId_;
644 if (dmsScreen->rsDisplayNode_ != nullptr) {
645 dmsScreen->rsDisplayNode_->SetDisplayOffset(0, 0);
646 dmsScreen->rsDisplayNode_->RemoveFromTree();
654 dmsScreen->groupDmsId_, screenId);