code: def get_default_policy_class(
      cls, config: AlgorithmConfig
  ) -> Optional[Type[Policy]]:
      if config["framework"] == "torch":
          from ray.rllib.algorithms.ddpg.ddpg_torch_policy import (
              DDPGTorchPolicy,
          )
  
          return DDPGTorchPolicy
      elif config["framework"] == "tf":
          from ray.rllib.algorithms.ddpg.ddpg_tf_policy import (
              DDPGTF1Policy,
          )
  
          return DDPGTF1Policy
      else:
          from ray.rllib.algorithms.ddpg.ddpg_tf_policy import (
              DDPGTF2Policy,
          )
  
          return DDPGTF2Policy
  
file_path: ray/rllib_contrib/ddpg/src/rllib_ddpg/ddpg/ddpg.py
imports: import logging
  from typing import List, Optional, Type
  from ray.rllib.algorithms.algorithm_config import AlgorithmConfig, NotProvided
  from ray.rllib.algorithms.simple_q.simple_q import SimpleQ, SimpleQConfig
  from ray.rllib.policy.policy import Policy
  from ray.rllib.utils.annotations import override
  from ray.rllib.utils.deprecation import DEPRECATED_VALUE
label_desc: Use image node_id 2 for calling the DDPG obj's underlying member method code with example usage: obj.get_default_policy_class(cls, config) and returns: DDPGTorchPolicy, DDPGTF1Policy, DDPGTF2Policy